Class: Google::Apis::ComputeAlpha::Disk
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::Disk
- 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 Persistent Disk resource. Google Compute Engine has two Disk resources:
- Zonal
- Regional Persistent disks are required for running your VM instances. Create both boot and non-boot (data) persistent disks. For more information, read Persistent Disks. For more storage options, read Storage options. The disks resource represents a zonal persistent disk. For more information, readZonal persistent disks. The regionDisks resource represents a regional persistent disk. For more information, read Regional resources.
Instance Attribute Summary collapse
-
#access_mode ⇒ String
The access mode of the disk.
-
#architecture ⇒ String
The architecture of the disk.
-
#async_primary_disk ⇒ Google::Apis::ComputeAlpha::DiskAsyncReplication
Disk asynchronously replicated into this disk.
-
#async_secondary_disks ⇒ Hash<String,Google::Apis::ComputeAlpha::DiskAsyncReplicationList>
Output only.
-
#creation_timestamp ⇒ String
Output only.
-
#description ⇒ String
An optional description of this resource.
-
#disk_encryption_key ⇒ Google::Apis::ComputeAlpha::CustomerEncryptionKey
Encrypts the disk using a customer-supplied encryption key or a customer-managed encryption key.
-
#enable_confidential_compute ⇒ Boolean
(also: #enable_confidential_compute?)
Whether this disk is using confidential compute mode.
-
#erase_windows_vss_signature ⇒ Boolean
(also: #erase_windows_vss_signature?)
Specifies whether the disk restored from a source snapshot should erase Windows specific VSS signature.
-
#guest_os_features ⇒ Array<Google::Apis::ComputeAlpha::GuestOsFeature>
A list of features to enable on the guest operating system.
-
#id ⇒ Fixnum
Output only.
-
#interface ⇒ String
[Deprecated] Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME.
-
#kind ⇒ String
Output only.
-
#label_fingerprint ⇒ String
A fingerprint for the labels being applied to this disk, which is essentially a hash of the labels set used for optimistic locking.
-
#labels ⇒ Hash<String,String>
Labels to apply to this disk.
-
#last_attach_timestamp ⇒ String
Output only.
-
#last_detach_timestamp ⇒ String
Output only.
-
#license_codes ⇒ Array<Fixnum>
Integer license codes indicating which licenses are attached to this disk.
-
#licenses ⇒ Array<String>
A list of publicly visible licenses.
-
#location_hint ⇒ String
An opaque location hint used to place the disk close to other resources.
-
#locked ⇒ Boolean
(also: #locked?)
Output only.
-
#multi_writer ⇒ Boolean
(also: #multi_writer?)
Indicates whether or not the disk can be read/write attached to more than one instance.
-
#name ⇒ String
Name of the resource.
-
#options ⇒ String
Internal use only.
-
#params ⇒ Google::Apis::ComputeAlpha::DiskParams
Additional disk params.
-
#physical_block_size_bytes ⇒ Fixnum
Physical block size of the persistent disk, in bytes.
-
#provisioned_iops ⇒ Fixnum
Indicates how many IOPS to provision for the disk.
-
#provisioned_throughput ⇒ Fixnum
Indicates how much throughput to provision for the disk.
-
#region ⇒ String
Output only.
-
#replica_zones ⇒ Array<String>
URLs of the zones where the disk should be replicated to.
-
#resource_policies ⇒ Array<String>
Resource policies applied to this disk for automatic snapshot creations.
-
#resource_status ⇒ Google::Apis::ComputeAlpha::DiskResourceStatus
Output only.
-
#satisfies_pzi ⇒ Boolean
(also: #satisfies_pzi?)
Output only.
-
#satisfies_pzs ⇒ Boolean
(also: #satisfies_pzs?)
Output only.
-
#self_link ⇒ String
Output only.
-
#self_link_with_id ⇒ String
Output only.
-
#size_gb ⇒ Fixnum
Size, in GB, of the persistent disk.
-
#source_consistency_group_policy ⇒ String
Output only.
-
#source_consistency_group_policy_id ⇒ String
Output only.
-
#source_disk ⇒ String
The source disk used to create this disk.
-
#source_disk_id ⇒ String
Output only.
-
#source_image ⇒ String
The source image used to create this disk.
-
#source_image_encryption_key ⇒ Google::Apis::ComputeAlpha::CustomerEncryptionKey
Thecustomer-supplied encryption key of the source image.
-
#source_image_id ⇒ String
Output only.
-
#source_instant_snapshot ⇒ String
The source instant snapshot used to create this disk.
-
#source_instant_snapshot_id ⇒ String
Output only.
-
#source_machine_image ⇒ String
The machine image to create the disk from.
-
#source_machine_image_disk_device_name ⇒ String
The device name of a disk within a given machine image.
-
#source_machine_image_encryption_key ⇒ Google::Apis::ComputeAlpha::CustomerEncryptionKey
Thecustomer-supplied encryption key of the source machine image.
-
#source_machine_image_id ⇒ String
Output only.
-
#source_snapshot ⇒ String
The source snapshot used to create this disk.
-
#source_snapshot_encryption_key ⇒ Google::Apis::ComputeAlpha::CustomerEncryptionKey
Thecustomer-supplied encryption key of the source snapshot.
-
#source_snapshot_id ⇒ String
Output only.
-
#source_storage_object ⇒ String
The full Google Cloud Storage URI where the disk image is stored.
-
#status ⇒ String
Output only.
-
#storage_pool ⇒ String
The storage pool in which the new disk is created.
-
#storage_type ⇒ String
[Deprecated] Storage type of the persistent disk.
-
#type ⇒ String
URL of the disk type resource describing which disk type to use to create the disk.
-
#users ⇒ Array<String>
Output only.
-
#zone ⇒ String
Output only.
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.
11626 11627 11628 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11626 def initialize(**args) update!(**args) end |
Instance Attribute Details
#access_mode ⇒ String
The access mode of the disk.
- READ_WRITE_SINGLE: The default AccessMode, means the disk can be attached to single instance in RW mode.
- READ_WRITE_MANY: The AccessMode means the disk can be attached to multiple instances in RW mode.
- READ_ONLY_MANY: The AccessMode means the disk can be
attached to multiple instances in RO mode.
The AccessMode is only valid for Hyperdisk disk types.
Corresponds to the JSON property
accessMode
11104 11105 11106 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11104 def access_mode @access_mode end |
#architecture ⇒ String
The architecture of the disk. Valid values are
ARM64 or X86_64.
Corresponds to the JSON property architecture
11110 11111 11112 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11110 def architecture @architecture end |
#async_primary_disk ⇒ Google::Apis::ComputeAlpha::DiskAsyncReplication
Disk asynchronously replicated into this disk.
Corresponds to the JSON property asyncPrimaryDisk
11115 11116 11117 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11115 def async_primary_disk @async_primary_disk end |
#async_secondary_disks ⇒ Hash<String,Google::Apis::ComputeAlpha::DiskAsyncReplicationList>
Output only. [Output Only] A list of disks this disk is asynchronously
replicated to.
Corresponds to the JSON property asyncSecondaryDisks
11121 11122 11123 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11121 def async_secondary_disks @async_secondary_disks end |
#creation_timestamp ⇒ String
Output only. [Output Only] Creation timestamp inRFC3339
text format.
Corresponds to the JSON property creationTimestamp
11127 11128 11129 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11127 def @creation_timestamp end |
#description ⇒ String
An optional description of this resource. Provide this property when you
create the resource.
Corresponds to the JSON property description
11133 11134 11135 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11133 def description @description end |
#disk_encryption_key ⇒ Google::Apis::ComputeAlpha::CustomerEncryptionKey
Encrypts the disk using a
customer-supplied encryption key or a
customer-managed encryption key.
Encryption keys do not protect access to metadata of the disk.
After you encrypt a disk with a customer-supplied key, you must provide the
same key if you use the disk later. For example, to create a disk snapshot,
to create a disk image, to create a machine image, or to attach the disk to
a virtual machine.
After you encrypt a disk with a customer-managed key, thediskEncryptionKey.
kmsKeyName is set to a key version
name once the disk is created. The disk is encrypted with this version of
the key. In the response, diskEncryptionKey.kmsKeyName appears
in the following format:
"diskEncryptionKey.kmsKeyName":
"projects/kms_project_id/locations/region/keyRings/
key_region/cryptoKeys/key
/cryptoKeysVersions/version
If you do not provide an encryption key when creating the disk, then the
disk is encrypted using an automatically generated key and you don't need
to provide a key to use the disk later.
Corresponds to the JSON property diskEncryptionKey
11157 11158 11159 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11157 def disk_encryption_key @disk_encryption_key end |
#enable_confidential_compute ⇒ Boolean Also known as: enable_confidential_compute?
Whether this disk is using confidential compute mode.
Corresponds to the JSON property enableConfidentialCompute
11162 11163 11164 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11162 def enable_confidential_compute @enable_confidential_compute end |
#erase_windows_vss_signature ⇒ Boolean Also known as: erase_windows_vss_signature?
Specifies whether the disk restored from a source snapshot should erase
Windows specific VSS signature.
Corresponds to the JSON property eraseWindowsVssSignature
11169 11170 11171 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11169 def erase_windows_vss_signature @erase_windows_vss_signature end |
#guest_os_features ⇒ Array<Google::Apis::ComputeAlpha::GuestOsFeature>
A list of features to enable on the guest operating system. Applicable
only for bootable images. Read
Enabling guest operating system features to see a list of available
options.
Corresponds to the JSON property guestOsFeatures
11178 11179 11180 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11178 def guest_os_features @guest_os_features end |
#id ⇒ Fixnum
Output only. [Output Only] The unique identifier for the resource. This
identifier is
defined by the server.
Corresponds to the JSON property id
11185 11186 11187 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11185 def id @id end |
#interface ⇒ String
[Deprecated] Specifies the disk interface to use for attaching this disk,
which is either SCSI or NVME. The default isSCSI.
Corresponds to the JSON property interface
11191 11192 11193 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11191 def interface @interface end |
#kind ⇒ String
Output only. [Output Only] Type of the resource. Always compute#disk for
disks.
Corresponds to the JSON property kind
11197 11198 11199 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11197 def kind @kind end |
#label_fingerprint ⇒ String
A fingerprint for the labels being applied to this disk, which is
essentially a hash of the labels set used for optimistic locking. The
fingerprint is initially generated by Compute Engine and changes after
every request to modify or update labels. You must always provide an
up-to-date fingerprint hash in order to update or change labels,
otherwise the request will fail with error412 conditionNotMet.
To see the latest fingerprint, make a get() request to
retrieve a disk.
Corresponds to the JSON property labelFingerprint
NOTE: Values are automatically base64 encoded/decoded in the client library.
11210 11211 11212 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11210 def label_fingerprint @label_fingerprint end |
#labels ⇒ Hash<String,String>
Labels to apply to this disk. These can be later modified by
the setLabels method.
Corresponds to the JSON property labels
11216 11217 11218 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11216 def labels @labels end |
#last_attach_timestamp ⇒ String
Output only. [Output Only] Last attach timestamp inRFC3339
text format.
Corresponds to the JSON property lastAttachTimestamp
11222 11223 11224 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11222 def @last_attach_timestamp end |
#last_detach_timestamp ⇒ String
Output only. [Output Only] Last detach timestamp inRFC3339
text format.
Corresponds to the JSON property lastDetachTimestamp
11228 11229 11230 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11228 def @last_detach_timestamp end |
#license_codes ⇒ Array<Fixnum>
Integer license codes indicating which licenses are attached to this disk.
Corresponds to the JSON property licenseCodes
11233 11234 11235 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11233 def license_codes @license_codes end |
#licenses ⇒ Array<String>
A list of publicly visible licenses. Reserved for Google's use.
Corresponds to the JSON property licenses
11238 11239 11240 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11238 def licenses @licenses end |
#location_hint ⇒ String
An opaque location hint used to place the disk close to other resources.
This field is for use by internal tools that use the public API.
Corresponds to the JSON property locationHint
11244 11245 11246 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11244 def location_hint @location_hint end |
#locked ⇒ Boolean Also known as: locked?
Output only. [Output Only] The field indicates if the disk is created from a locked source image. Attachment of a disk created from a locked source image will cause the following operations to become irreversibly prohibited:
- R/W or R/O disk attachment to any other instance
- Disk detachment. And the disk can only be deleted when the instance is deleted
- Creation of images or snapshots
Disk cloning Furthermore, the instance with at least one disk with locked flag set to true will be prohibited from performing the operations below:
Further attachment of secondary disks.
Detachment of any disks
Create machine images
Create instance template
Delete the instance with --keep-disk parameter set to true for locked disks
Attach a locked disk with --auto-delete parameter set to false Corresponds to the JSON property
locked
11268 11269 11270 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11268 def locked @locked end |
#multi_writer ⇒ Boolean Also known as: multi_writer?
Indicates whether or not the disk can be read/write attached to
more than one instance.
Corresponds to the JSON property multiWriter
11275 11276 11277 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11275 def multi_writer @multi_writer end |
#name ⇒ String
Name of the resource. Provided by the client when the resource is created.
The name must be 1-63 characters long, and comply withRFC1035.
Specifically, the name must be 1-63 characters long and match the regular
expression [a-z]([-a-z0-9]*[a-z0-9])?
which means the first character must be a lowercase letter, and all
following characters must be a dash, lowercase letter, or digit, except
the last character, which cannot be a dash.
Corresponds to the JSON property name
11287 11288 11289 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11287 def name @name end |
#options ⇒ String
Internal use only.
Corresponds to the JSON property options
11292 11293 11294 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11292 def @options end |
#params ⇒ Google::Apis::ComputeAlpha::DiskParams
Additional disk params.
Corresponds to the JSON property params
11297 11298 11299 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11297 def params @params end |
#physical_block_size_bytes ⇒ Fixnum
Physical block size of the persistent disk, in bytes.
If not present in a request, a default value is used.
The currently supported size is 4096, other sizes may be added in
the future.
If an unsupported value is requested, the error message will list
the supported values for the caller's project.
Corresponds to the JSON property physicalBlockSizeBytes
11307 11308 11309 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11307 def physical_block_size_bytes @physical_block_size_bytes end |
#provisioned_iops ⇒ Fixnum
Indicates how many IOPS to provision for the disk. This sets the number
of I/O operations per second that the disk can handle. Values must be
between 10,000 and 120,000. For more details, see theExtreme persistent
disk documentation.
Corresponds to the JSON property provisionedIops
11315 11316 11317 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11315 def provisioned_iops @provisioned_iops end |
#provisioned_throughput ⇒ Fixnum
Indicates how much throughput to provision for the disk. This sets the
number of throughput mb per second that the disk can handle. Values must be
greater than or equal to 1.
Corresponds to the JSON property provisionedThroughput
11322 11323 11324 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11322 def provisioned_throughput @provisioned_throughput end |
#region ⇒ String
Output only. [Output Only] URL of the region where the disk resides. Only
applicable for
regional resources.
You must specify this field as part of the HTTP request URL. It is
not settable as a field in the request body.
Corresponds to the JSON property region
11331 11332 11333 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11331 def region @region end |
#replica_zones ⇒ Array<String>
URLs of the zones where the disk should be replicated to. Only applicable
for regional resources.
Corresponds to the JSON property replicaZones
11337 11338 11339 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11337 def replica_zones @replica_zones end |
#resource_policies ⇒ Array<String>
Resource policies applied to this disk for automatic snapshot creations.
Corresponds to the JSON property resourcePolicies
11342 11343 11344 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11342 def resource_policies @resource_policies end |
#resource_status ⇒ Google::Apis::ComputeAlpha::DiskResourceStatus
Output only. [Output Only] Status information for the disk resource.
Corresponds to the JSON property resourceStatus
11347 11348 11349 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11347 def resource_status @resource_status end |
#satisfies_pzi ⇒ Boolean Also known as: satisfies_pzi?
Output only. Reserved for future use.
Corresponds to the JSON property satisfiesPzi
11352 11353 11354 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11352 def satisfies_pzi @satisfies_pzi end |
#satisfies_pzs ⇒ Boolean Also known as: satisfies_pzs?
Output only. [Output Only] Reserved for future use.
Corresponds to the JSON property satisfiesPzs
11358 11359 11360 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11358 def satisfies_pzs @satisfies_pzs end |
#self_link ⇒ String
Output only. [Output Only] Server-defined fully-qualified URL for this
resource.
Corresponds to the JSON property selfLink
11365 11366 11367 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11365 def self_link @self_link end |
#self_link_with_id ⇒ String
Output only. [Output Only] Server-defined URL for this resource's resource id.
Corresponds to the JSON property selfLinkWithId
11370 11371 11372 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11370 def self_link_with_id @self_link_with_id end |
#size_gb ⇒ Fixnum
Size, in GB, of the persistent disk. You can specify
this field when creating a persistent disk using thesourceImage,
sourceSnapshot, orsourceDisk parameter, or specify it alone to create an empty
persistent disk.
If you specify this field along with a source, the value ofsizeGb must not be
less than the size of the
source.
Acceptable values are greater than 0.
Corresponds to the JSON property sizeGb
11382 11383 11384 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11382 def size_gb @size_gb end |
#source_consistency_group_policy ⇒ String
Output only. [Output Only] URL of the DiskConsistencyGroupPolicy for a
secondary disk
that was created using a consistency group.
Corresponds to the JSON property sourceConsistencyGroupPolicy
11389 11390 11391 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11389 def source_consistency_group_policy @source_consistency_group_policy end |
#source_consistency_group_policy_id ⇒ String
Output only. [Output Only] ID of the DiskConsistencyGroupPolicy for a
secondary disk
that was created using a consistency group.
Corresponds to the JSON property sourceConsistencyGroupPolicyId
11396 11397 11398 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11396 def source_consistency_group_policy_id @source_consistency_group_policy_id end |
#source_disk ⇒ String
The source disk used to create this disk. You can provide this as a partial or full URL to the resource. For example, the following are valid values:
- https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/ disk
- https://www.googleapis.com/compute/v1/projects/project/regions/region/ disks/disk
- projects/project/zones/zone/disks/disk
- projects/project/regions/region/disks/disk
- zones/zone/disks/disk
-
regions/region/disks/disk
Corresponds to the JSON property sourceDisk
11424 11425 11426 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11424 def source_disk @source_disk end |
#source_disk_id ⇒ String
Output only. [Output Only] The unique ID of the disk used to create this disk.
This
value identifies the exact disk that was used to create this persistent
disk. For example, if you created the persistent disk from a disk that
was later deleted and recreated under the same name, the source disk ID
would identify the exact version of the disk that was used.
Corresponds to the JSON property sourceDiskId
11434 11435 11436 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11434 def source_disk_id @source_disk_id end |
#source_image ⇒ String
The source image used to create this disk. If the source image is
deleted, this field will not be set.
To create a disk with one of the public operating system images, specify
the image by its family name. For example, specifyfamily/debian-9 to use the
latest Debian 9 image:
projects/debian-cloud/global/images/family/debian-9
Alternatively, use a specific version of a public operating system image:
projects/debian-cloud/global/images/debian-9-stretch-vYYYYMMDD
To create a disk with a custom image that you created, specify the
image name in the following format:
global/images/my-custom-image
You can also specify a custom image by its image family, which returns
the latest version of the image in that family. Replace the image name
with family/family-name:
global/images/family/my-image-family
Corresponds to the JSON property sourceImage
11453 11454 11455 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11453 def source_image @source_image end |
#source_image_encryption_key ⇒ Google::Apis::ComputeAlpha::CustomerEncryptionKey
Thecustomer-supplied
encryption key of the source image. Required if the source image is
protected by a customer-supplied encryption key.
Corresponds to the JSON property sourceImageEncryptionKey
11460 11461 11462 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11460 def source_image_encryption_key @source_image_encryption_key end |
#source_image_id ⇒ String
Output only. [Output Only] The ID value of the image used to create this disk.
This
value identifies the exact image that was used to create this persistent
disk. For example, if you created the persistent disk from an image that
was later deleted and recreated under the same name, the source image ID
would identify the exact version of the image that was used.
Corresponds to the JSON property sourceImageId
11470 11471 11472 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11470 def source_image_id @source_image_id end |
#source_instant_snapshot ⇒ String
The source instant snapshot used to create this disk. You can provide this as a partial or full URL to the resource. For example, the following are valid values:
- https://www.googleapis.com/compute/v1/projects/project/zones/zone/ instantSnapshots/instantSnapshot
- projects/project/zones/zone/instantSnapshots/instantSnapshot
- zones/zone/instantSnapshots/instantSnapshot
Corresponds to the JSON property
sourceInstantSnapshot
11483 11484 11485 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11483 def source_instant_snapshot @source_instant_snapshot end |
#source_instant_snapshot_id ⇒ String
Output only. [Output Only] The unique ID of the instant snapshot used to
create this
disk. This value identifies the exact instant snapshot that was used to
create this persistent disk. For example, if you created the persistent
disk from an instant snapshot that was later deleted and recreated under
the same name, the source instant snapshot ID would identify the exact
version of the instant snapshot that was used.
Corresponds to the JSON property sourceInstantSnapshotId
11494 11495 11496 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11494 def source_instant_snapshot_id @source_instant_snapshot_id end |
#source_machine_image ⇒ String
The machine image to create the disk from. You can provide this as a partial or full URL to the resource. For example, the following are valid values:
- https://www.googleapis.com/compute/v1/projects/project/global/ machineImages/machineImage
- projects/project/global/machineImages/machineImage
- global/machineImages/machineImage
Corresponds to the JSON property
sourceMachineImage
11507 11508 11509 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11507 def source_machine_image @source_machine_image end |
#source_machine_image_disk_device_name ⇒ String
The device name of a disk within a given machine image. The
source_machine_image must be specified.
Corresponds to the JSON property sourceMachineImageDiskDeviceName
11513 11514 11515 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11513 def source_machine_image_disk_device_name @source_machine_image_disk_device_name end |
#source_machine_image_encryption_key ⇒ Google::Apis::ComputeAlpha::CustomerEncryptionKey
Thecustomer-supplied
encryption key of the source machine image. Required if the source
machine image is protected by a customer-supplied encryption key.
Corresponds to the JSON property sourceMachineImageEncryptionKey
11520 11521 11522 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11520 def source_machine_image_encryption_key @source_machine_image_encryption_key end |
#source_machine_image_id ⇒ String
Output only. [Output Only] The unique ID of the machine image used to create
this disk.
This value identifies the exact machine image that was used to create this
persistent disk. For example, if you created the persistent disk from a
machine image that was later deleted and recreated under the same name, the
source machine image ID would identify the exact version of the machine
image that was used.
Corresponds to the JSON property sourceMachineImageId
11531 11532 11533 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11531 def source_machine_image_id @source_machine_image_id end |
#source_snapshot ⇒ String
The source snapshot used to create this disk. You can provide this as a partial or full URL to the resource. For example, the following are valid values:
- https://www.googleapis.com/compute/v1/projects/project/global/snapshots/ snapshot
- projects/project/global/snapshots/snapshot
- global/snapshots/snapshot
Corresponds to the JSON property
sourceSnapshot
11544 11545 11546 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11544 def source_snapshot @source_snapshot end |
#source_snapshot_encryption_key ⇒ Google::Apis::ComputeAlpha::CustomerEncryptionKey
Thecustomer-supplied
encryption key of the source snapshot. Required if the source snapshot
is protected by a customer-supplied encryption key.
Corresponds to the JSON property sourceSnapshotEncryptionKey
11551 11552 11553 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11551 def source_snapshot_encryption_key @source_snapshot_encryption_key end |
#source_snapshot_id ⇒ String
Output only. [Output Only] The unique ID of the snapshot used to create this
disk. This
value identifies the exact snapshot that was used to create this persistent
disk. For example, if you created the persistent disk from a snapshot that
was later deleted and recreated under the same name, the source snapshot ID
would identify the exact version of the snapshot that was used.
Corresponds to the JSON property sourceSnapshotId
11561 11562 11563 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11561 def source_snapshot_id @source_snapshot_id end |
#source_storage_object ⇒ String
The full Google Cloud Storage URI where the disk image is stored. This file
must be a gzip-compressed tarball whose name ends in .tar.gz or virtual
machine disk whose name ends in vmdk. Valid URIs may start with gs:// or
https://storage.googleapis.com/. This flag is not optimized for creating
multiple disks from a source storage object. To create many disks from a
source storage object, use gcloud compute images
import instead.
Corresponds to the JSON property sourceStorageObject
11572 11573 11574 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11572 def source_storage_object @source_storage_object end |
#status ⇒ String
Output only. [Output Only] The status of disk creation.
- CREATING: Disk is provisioning.
- RESTORING: Source data is being copied into the disk.
- FAILED: Disk creation failed.
- READY: Disk is ready for use.
- DELETING: Disk is deleting.
Corresponds to the JSON property
status
11585 11586 11587 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11585 def status @status end |
#storage_pool ⇒ String
The storage pool in which the new disk is created. You can provide this as a partial or full URL to the resource. For example, the following are valid values:
- https://www.googleapis.com/compute/v1/projects/project/zones/zone/ storagePools/storagePool
- projects/project/zones/zone/storagePools/storagePool
- zones/zone/storagePools/storagePool
Corresponds to the JSON property
storagePool
11598 11599 11600 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11598 def storage_pool @storage_pool end |
#storage_type ⇒ String
[Deprecated] Storage type of the persistent disk.
Corresponds to the JSON property storageType
11603 11604 11605 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11603 def storage_type @storage_type end |
#type ⇒ String
URL of the disk type resource describing which disk type to use to create
the disk. Provide this when creating the disk. For example:projects/project/
zones/zone/diskTypes/pd-ssd. See Persistent disk
types.
Corresponds to the JSON property type
11611 11612 11613 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11611 def type @type end |
#users ⇒ Array<String>
Output only. [Output Only] Links to the users of the disk (attached instances)
in form:projects/project/zones/zone/instances/instance
Corresponds to the JSON property users
11617 11618 11619 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11617 def users @users end |
#zone ⇒ String
Output only. [Output Only] URL of the zone where the disk resides.
You must specify this field as part of the HTTP request URL. It is
not settable as a field in the request body.
Corresponds to the JSON property zone
11624 11625 11626 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11624 def zone @zone end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
11631 11632 11633 11634 11635 11636 11637 11638 11639 11640 11641 11642 11643 11644 11645 11646 11647 11648 11649 11650 11651 11652 11653 11654 11655 11656 11657 11658 11659 11660 11661 11662 11663 11664 11665 11666 11667 11668 11669 11670 11671 11672 11673 11674 11675 11676 11677 11678 11679 11680 11681 11682 11683 11684 11685 11686 11687 11688 11689 11690 11691 11692 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11631 def update!(**args) @access_mode = args[:access_mode] if args.key?(:access_mode) @architecture = args[:architecture] if args.key?(:architecture) @async_primary_disk = args[:async_primary_disk] if args.key?(:async_primary_disk) @async_secondary_disks = args[:async_secondary_disks] if args.key?(:async_secondary_disks) @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) @description = args[:description] if args.key?(:description) @disk_encryption_key = args[:disk_encryption_key] if args.key?(:disk_encryption_key) @enable_confidential_compute = args[:enable_confidential_compute] if args.key?(:enable_confidential_compute) @erase_windows_vss_signature = args[:erase_windows_vss_signature] if args.key?(:erase_windows_vss_signature) @guest_os_features = args[:guest_os_features] if args.key?(:guest_os_features) @id = args[:id] if args.key?(:id) @interface = args[:interface] if args.key?(:interface) @kind = args[:kind] if args.key?(:kind) @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint) @labels = args[:labels] if args.key?(:labels) @last_attach_timestamp = args[:last_attach_timestamp] if args.key?(:last_attach_timestamp) @last_detach_timestamp = args[:last_detach_timestamp] if args.key?(:last_detach_timestamp) @license_codes = args[:license_codes] if args.key?(:license_codes) @licenses = args[:licenses] if args.key?(:licenses) @location_hint = args[:location_hint] if args.key?(:location_hint) @locked = args[:locked] if args.key?(:locked) @multi_writer = args[:multi_writer] if args.key?(:multi_writer) @name = args[:name] if args.key?(:name) @options = args[:options] if args.key?(:options) @params = args[:params] if args.key?(:params) @physical_block_size_bytes = args[:physical_block_size_bytes] if args.key?(:physical_block_size_bytes) @provisioned_iops = args[:provisioned_iops] if args.key?(:provisioned_iops) @provisioned_throughput = args[:provisioned_throughput] if args.key?(:provisioned_throughput) @region = args[:region] if args.key?(:region) @replica_zones = args[:replica_zones] if args.key?(:replica_zones) @resource_policies = args[:resource_policies] if args.key?(:resource_policies) @resource_status = args[:resource_status] if args.key?(:resource_status) @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi) @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs) @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) @size_gb = args[:size_gb] if args.key?(:size_gb) @source_consistency_group_policy = args[:source_consistency_group_policy] if args.key?(:source_consistency_group_policy) @source_consistency_group_policy_id = args[:source_consistency_group_policy_id] if args.key?(:source_consistency_group_policy_id) @source_disk = args[:source_disk] if args.key?(:source_disk) @source_disk_id = args[:source_disk_id] if args.key?(:source_disk_id) @source_image = args[:source_image] if args.key?(:source_image) @source_image_encryption_key = args[:source_image_encryption_key] if args.key?(:source_image_encryption_key) @source_image_id = args[:source_image_id] if args.key?(:source_image_id) @source_instant_snapshot = args[:source_instant_snapshot] if args.key?(:source_instant_snapshot) @source_instant_snapshot_id = args[:source_instant_snapshot_id] if args.key?(:source_instant_snapshot_id) @source_machine_image = args[:source_machine_image] if args.key?(:source_machine_image) @source_machine_image_disk_device_name = args[:source_machine_image_disk_device_name] if args.key?(:source_machine_image_disk_device_name) @source_machine_image_encryption_key = args[:source_machine_image_encryption_key] if args.key?(:source_machine_image_encryption_key) @source_machine_image_id = args[:source_machine_image_id] if args.key?(:source_machine_image_id) @source_snapshot = args[:source_snapshot] if args.key?(:source_snapshot) @source_snapshot_encryption_key = args[:source_snapshot_encryption_key] if args.key?(:source_snapshot_encryption_key) @source_snapshot_id = args[:source_snapshot_id] if args.key?(:source_snapshot_id) @source_storage_object = args[:source_storage_object] if args.key?(:source_storage_object) @status = args[:status] if args.key?(:status) @storage_pool = args[:storage_pool] if args.key?(:storage_pool) @storage_type = args[:storage_type] if args.key?(:storage_type) @type = args[:type] if args.key?(:type) @users = args[:users] if args.key?(:users) @zone = args[:zone] if args.key?(:zone) end |