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.
11587 11588 11589 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11587 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
11065 11066 11067 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11065 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
11071 11072 11073 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11071 def architecture @architecture end |
#async_primary_disk ⇒ Google::Apis::ComputeAlpha::DiskAsyncReplication
Disk asynchronously replicated into this disk.
Corresponds to the JSON property asyncPrimaryDisk
11076 11077 11078 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11076 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
11082 11083 11084 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11082 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
11088 11089 11090 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11088 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
11094 11095 11096 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11094 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
11118 11119 11120 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11118 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
11123 11124 11125 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11123 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
11130 11131 11132 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11130 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
11139 11140 11141 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11139 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
11146 11147 11148 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11146 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
11152 11153 11154 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11152 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
11158 11159 11160 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11158 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.
11171 11172 11173 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11171 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
11177 11178 11179 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11177 def labels @labels end |
#last_attach_timestamp ⇒ String
Output only. [Output Only] Last attach timestamp inRFC3339
text format.
Corresponds to the JSON property lastAttachTimestamp
11183 11184 11185 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11183 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
11189 11190 11191 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11189 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
11194 11195 11196 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11194 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
11199 11200 11201 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11199 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
11205 11206 11207 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11205 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
11229 11230 11231 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11229 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
11236 11237 11238 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11236 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
11248 11249 11250 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11248 def name @name end |
#options ⇒ String
Internal use only.
Corresponds to the JSON property options
11253 11254 11255 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11253 def @options end |
#params ⇒ Google::Apis::ComputeAlpha::DiskParams
Additional disk params.
Corresponds to the JSON property params
11258 11259 11260 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11258 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
11268 11269 11270 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11268 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
11276 11277 11278 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11276 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
11283 11284 11285 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11283 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
11292 11293 11294 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11292 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
11298 11299 11300 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11298 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
11303 11304 11305 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11303 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
11308 11309 11310 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11308 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
11313 11314 11315 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11313 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
11319 11320 11321 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11319 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
11326 11327 11328 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11326 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
11331 11332 11333 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11331 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
11343 11344 11345 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11343 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
11350 11351 11352 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11350 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
11357 11358 11359 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11357 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
11385 11386 11387 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11385 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
11395 11396 11397 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11395 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
11414 11415 11416 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11414 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
11421 11422 11423 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11421 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
11431 11432 11433 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11431 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
11444 11445 11446 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11444 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
11455 11456 11457 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11455 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
11468 11469 11470 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11468 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
11474 11475 11476 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11474 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
11481 11482 11483 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11481 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
11492 11493 11494 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11492 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
11505 11506 11507 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11505 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
11512 11513 11514 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11512 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
11522 11523 11524 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11522 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
11533 11534 11535 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11533 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
11546 11547 11548 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11546 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
11559 11560 11561 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11559 def storage_pool @storage_pool end |
#storage_type ⇒ String
[Deprecated] Storage type of the persistent disk.
Corresponds to the JSON property storageType
11564 11565 11566 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11564 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
11572 11573 11574 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11572 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
11578 11579 11580 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11578 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
11585 11586 11587 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11585 def zone @zone end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
11592 11593 11594 11595 11596 11597 11598 11599 11600 11601 11602 11603 11604 11605 11606 11607 11608 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 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11592 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 |