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.
11604 11605 11606 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11604 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
11082 11083 11084 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11082 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
11088 11089 11090 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11088 def architecture @architecture end |
#async_primary_disk ⇒ Google::Apis::ComputeAlpha::DiskAsyncReplication
Disk asynchronously replicated into this disk.
Corresponds to the JSON property asyncPrimaryDisk
11093 11094 11095 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11093 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
11099 11100 11101 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11099 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
11105 11106 11107 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11105 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
11111 11112 11113 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11111 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
11135 11136 11137 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11135 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
11140 11141 11142 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11140 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
11147 11148 11149 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11147 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
11156 11157 11158 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11156 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
11163 11164 11165 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11163 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
11169 11170 11171 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11169 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
11175 11176 11177 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11175 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.
11188 11189 11190 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11188 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
11194 11195 11196 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11194 def labels @labels end |
#last_attach_timestamp ⇒ String
Output only. [Output Only] Last attach timestamp inRFC3339
text format.
Corresponds to the JSON property lastAttachTimestamp
11200 11201 11202 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11200 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
11206 11207 11208 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11206 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
11211 11212 11213 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11211 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
11216 11217 11218 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11216 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
11222 11223 11224 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11222 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
11246 11247 11248 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11246 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
11253 11254 11255 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11253 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
11265 11266 11267 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11265 def name @name end |
#options ⇒ String
Internal use only.
Corresponds to the JSON property options
11270 11271 11272 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11270 def @options end |
#params ⇒ Google::Apis::ComputeAlpha::DiskParams
Additional disk params.
Corresponds to the JSON property params
11275 11276 11277 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11275 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
11285 11286 11287 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11285 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
11293 11294 11295 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11293 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
11300 11301 11302 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11300 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
11309 11310 11311 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11309 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
11315 11316 11317 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11315 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
11320 11321 11322 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11320 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
11325 11326 11327 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11325 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
11330 11331 11332 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11330 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
11336 11337 11338 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11336 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
11343 11344 11345 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11343 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
11348 11349 11350 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11348 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
11360 11361 11362 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11360 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
11367 11368 11369 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11367 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
11374 11375 11376 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11374 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
11402 11403 11404 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11402 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
11412 11413 11414 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11412 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
11431 11432 11433 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11431 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
11438 11439 11440 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11438 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
11448 11449 11450 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11448 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
11461 11462 11463 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11461 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
11472 11473 11474 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11472 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
11485 11486 11487 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11485 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
11491 11492 11493 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11491 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
11498 11499 11500 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11498 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
11509 11510 11511 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11509 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
11522 11523 11524 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11522 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
11529 11530 11531 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11529 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
11539 11540 11541 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11539 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
11550 11551 11552 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11550 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
11563 11564 11565 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11563 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
11576 11577 11578 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11576 def storage_pool @storage_pool end |
#storage_type ⇒ String
[Deprecated] Storage type of the persistent disk.
Corresponds to the JSON property storageType
11581 11582 11583 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11581 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
11589 11590 11591 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11589 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
11595 11596 11597 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11595 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
11602 11603 11604 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11602 def zone @zone end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
11609 11610 11611 11612 11613 11614 11615 11616 11617 11618 11619 11620 11621 11622 11623 11624 11625 11626 11627 11628 11629 11630 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 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11609 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 |