Class: Google::Apis::ComputeBeta::Disk
- Inherits:
-
Object
- Object
- Google::Apis::ComputeBeta::Disk
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_beta/classes.rb,
lib/google/apis/compute_beta/representations.rb,
lib/google/apis/compute_beta/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::ComputeBeta::DiskAsyncReplication
Disk asynchronously replicated into this disk.
-
#async_secondary_disks ⇒ Hash<String,Google::Apis::ComputeBeta::DiskAsyncReplicationList>
Output only.
-
#creation_timestamp ⇒ String
Output only.
-
#description ⇒ String
An optional description of this resource.
-
#disk_encryption_key ⇒ Google::Apis::ComputeBeta::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::ComputeBeta::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::ComputeBeta::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::ComputeBeta::DiskResourceStatus
Output only.
-
#satisfies_pzi ⇒ Boolean
(also: #satisfies_pzi?)
Output only.
-
#satisfies_pzs ⇒ Boolean
(also: #satisfies_pzs?)
Output only.
-
#self_link ⇒ 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::ComputeBeta::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_snapshot ⇒ String
The source snapshot used to create this disk.
-
#source_snapshot_encryption_key ⇒ Google::Apis::ComputeBeta::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.
10254 10255 10256 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10254 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
9774 9775 9776 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9774 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
9780 9781 9782 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9780 def architecture @architecture end |
#async_primary_disk ⇒ Google::Apis::ComputeBeta::DiskAsyncReplication
Disk asynchronously replicated into this disk.
Corresponds to the JSON property asyncPrimaryDisk
9785 9786 9787 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9785 def async_primary_disk @async_primary_disk end |
#async_secondary_disks ⇒ Hash<String,Google::Apis::ComputeBeta::DiskAsyncReplicationList>
Output only. [Output Only] A list of disks this disk is asynchronously
replicated to.
Corresponds to the JSON property asyncSecondaryDisks
9791 9792 9793 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9791 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
9797 9798 9799 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9797 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
9803 9804 9805 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9803 def description @description end |
#disk_encryption_key ⇒ Google::Apis::ComputeBeta::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
9827 9828 9829 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9827 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
9832 9833 9834 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9832 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
9839 9840 9841 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9839 def erase_windows_vss_signature @erase_windows_vss_signature end |
#guest_os_features ⇒ Array<Google::Apis::ComputeBeta::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
9848 9849 9850 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9848 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
9855 9856 9857 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9855 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
9861 9862 9863 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9861 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
9867 9868 9869 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9867 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.
9880 9881 9882 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9880 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
9886 9887 9888 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9886 def labels @labels end |
#last_attach_timestamp ⇒ String
Output only. [Output Only] Last attach timestamp inRFC3339
text format.
Corresponds to the JSON property lastAttachTimestamp
9892 9893 9894 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9892 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
9898 9899 9900 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9898 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
9903 9904 9905 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9903 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
9908 9909 9910 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9908 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
9914 9915 9916 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9914 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
9938 9939 9940 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9938 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
9945 9946 9947 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9945 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
9957 9958 9959 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9957 def name @name end |
#options ⇒ String
Internal use only.
Corresponds to the JSON property options
9962 9963 9964 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9962 def @options end |
#params ⇒ Google::Apis::ComputeBeta::DiskParams
Additional disk params.
Corresponds to the JSON property params
9967 9968 9969 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9967 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
9977 9978 9979 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9977 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
9985 9986 9987 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9985 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
9992 9993 9994 |
# File 'lib/google/apis/compute_beta/classes.rb', line 9992 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
10001 10002 10003 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10001 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
10007 10008 10009 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10007 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
10012 10013 10014 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10012 def resource_policies @resource_policies end |
#resource_status ⇒ Google::Apis::ComputeBeta::DiskResourceStatus
Output only. [Output Only] Status information for the disk resource.
Corresponds to the JSON property resourceStatus
10017 10018 10019 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10017 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
10022 10023 10024 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10022 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
10028 10029 10030 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10028 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
10035 10036 10037 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10035 def self_link @self_link 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
10047 10048 10049 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10047 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
10054 10055 10056 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10054 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
10061 10062 10063 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10061 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
10089 10090 10091 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10089 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
10099 10100 10101 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10099 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
10118 10119 10120 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10118 def source_image @source_image end |
#source_image_encryption_key ⇒ Google::Apis::ComputeBeta::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
10125 10126 10127 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10125 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
10135 10136 10137 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10135 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
10148 10149 10150 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10148 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
10159 10160 10161 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10159 def source_instant_snapshot_id @source_instant_snapshot_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
10172 10173 10174 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10172 def source_snapshot @source_snapshot end |
#source_snapshot_encryption_key ⇒ Google::Apis::ComputeBeta::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
10179 10180 10181 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10179 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
10189 10190 10191 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10189 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
10200 10201 10202 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10200 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
10213 10214 10215 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10213 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
10226 10227 10228 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10226 def storage_pool @storage_pool end |
#storage_type ⇒ String
[Deprecated] Storage type of the persistent disk.
Corresponds to the JSON property storageType
10231 10232 10233 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10231 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
10239 10240 10241 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10239 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
10245 10246 10247 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10245 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
10252 10253 10254 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10252 def zone @zone end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
10259 10260 10261 10262 10263 10264 10265 10266 10267 10268 10269 10270 10271 10272 10273 10274 10275 10276 10277 10278 10279 10280 10281 10282 10283 10284 10285 10286 10287 10288 10289 10290 10291 10292 10293 10294 10295 10296 10297 10298 10299 10300 10301 10302 10303 10304 10305 10306 10307 10308 10309 10310 10311 10312 10313 10314 10315 |
# File 'lib/google/apis/compute_beta/classes.rb', line 10259 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) @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_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 |