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.
12429 12430 12431 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12429 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
11907 11908 11909 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11907 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
11913 11914 11915 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11913 def architecture @architecture end |
#async_primary_disk ⇒ Google::Apis::ComputeAlpha::DiskAsyncReplication
Disk asynchronously replicated into this disk.
Corresponds to the JSON property asyncPrimaryDisk
11918 11919 11920 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11918 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
11924 11925 11926 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11924 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
11930 11931 11932 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11930 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
11936 11937 11938 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11936 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
11960 11961 11962 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11960 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
11965 11966 11967 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11965 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
11972 11973 11974 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11972 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
11981 11982 11983 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11981 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
11988 11989 11990 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11988 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
11994 11995 11996 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 11994 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
12000 12001 12002 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12000 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.
12013 12014 12015 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12013 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
12019 12020 12021 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12019 def labels @labels end |
#last_attach_timestamp ⇒ String
Output only. [Output Only] Last attach timestamp inRFC3339
text format.
Corresponds to the JSON property lastAttachTimestamp
12025 12026 12027 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12025 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
12031 12032 12033 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12031 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
12036 12037 12038 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12036 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
12041 12042 12043 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12041 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
12047 12048 12049 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12047 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
12071 12072 12073 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12071 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
12078 12079 12080 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12078 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
12090 12091 12092 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12090 def name @name end |
#options ⇒ String
Internal use only.
Corresponds to the JSON property options
12095 12096 12097 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12095 def @options end |
#params ⇒ Google::Apis::ComputeAlpha::DiskParams
Additional disk params.
Corresponds to the JSON property params
12100 12101 12102 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12100 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
12110 12111 12112 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12110 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
12118 12119 12120 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12118 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
12125 12126 12127 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12125 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
12134 12135 12136 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12134 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
12140 12141 12142 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12140 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
12145 12146 12147 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12145 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
12150 12151 12152 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12150 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
12155 12156 12157 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12155 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
12161 12162 12163 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12161 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
12168 12169 12170 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12168 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
12173 12174 12175 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12173 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
12185 12186 12187 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12185 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
12192 12193 12194 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12192 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
12199 12200 12201 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12199 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
12227 12228 12229 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12227 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
12237 12238 12239 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12237 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
12256 12257 12258 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12256 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
12263 12264 12265 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12263 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
12273 12274 12275 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12273 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
12286 12287 12288 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12286 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
12297 12298 12299 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12297 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
12310 12311 12312 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12310 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
12316 12317 12318 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12316 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
12323 12324 12325 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12323 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
12334 12335 12336 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12334 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
12347 12348 12349 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12347 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
12354 12355 12356 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12354 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
12364 12365 12366 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12364 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
12375 12376 12377 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12375 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
12388 12389 12390 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12388 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
12401 12402 12403 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12401 def storage_pool @storage_pool end |
#storage_type ⇒ String
[Deprecated] Storage type of the persistent disk.
Corresponds to the JSON property storageType
12406 12407 12408 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12406 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
12414 12415 12416 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12414 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
12420 12421 12422 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12420 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
12427 12428 12429 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12427 def zone @zone end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
12434 12435 12436 12437 12438 12439 12440 12441 12442 12443 12444 12445 12446 12447 12448 12449 12450 12451 12452 12453 12454 12455 12456 12457 12458 12459 12460 12461 12462 12463 12464 12465 12466 12467 12468 12469 12470 12471 12472 12473 12474 12475 12476 12477 12478 12479 12480 12481 12482 12483 12484 12485 12486 12487 12488 12489 12490 12491 12492 12493 12494 12495 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 12434 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 |