Class: Google::Apis::ComputeBeta::AttachedDisk
- Inherits:
-
Object
- Object
- Google::Apis::ComputeBeta::AttachedDisk
- Defined in:
- generated/google/apis/compute_beta/classes.rb,
generated/google/apis/compute_beta/representations.rb,
generated/google/apis/compute_beta/representations.rb
Overview
An instance-attached disk resource.
Instance Attribute Summary collapse
-
#auto_delete ⇒ Boolean
(also: #auto_delete?)
Specifies whether the disk will be auto-deleted when the instance is deleted ( but not when the disk is detached from the instance).
-
#boot ⇒ Boolean
(also: #boot?)
Indicates that this is a boot disk.
-
#device_name ⇒ String
Specifies a unique device name of your choice that is reflected into the /dev/ disk/by-id/google-* tree of a Linux operating system running within the instance.
-
#disk_encryption_key ⇒ Google::Apis::ComputeBeta::CustomerEncryptionKey
Represents a customer-supplied encryption key Corresponds to the JSON property
diskEncryptionKey
. -
#guest_os_features ⇒ Array<Google::Apis::ComputeBeta::GuestOsFeature>
A list of features to enable on the guest operating system.
-
#index ⇒ Fixnum
[Output Only] A zero-based index to this disk, where 0 is reserved for the boot disk.
-
#initialize_params ⇒ Google::Apis::ComputeBeta::AttachedDiskInitializeParams
[Input Only] Specifies the parameters for a new disk that will be created alongside the new instance.
-
#interface ⇒ String
Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME.
-
#kind ⇒ String
[Output Only] Type of the resource.
-
#licenses ⇒ Array<String>
[Output Only] Any valid publicly visible licenses.
-
#mode ⇒ String
The mode in which to attach this disk, either READ_WRITE or READ_ONLY.
-
#source ⇒ String
Specifies a valid partial or full URL to an existing Persistent Disk resource.
-
#type ⇒ String
Specifies the type of the disk, either SCRATCH or PERSISTENT.
Instance Method Summary collapse
-
#initialize(**args) ⇒ AttachedDisk
constructor
A new instance of AttachedDisk.
-
#update!(**args) ⇒ Object
Update properties of this object.
Methods included from Google::Apis::Core::JsonObjectSupport
Methods included from Google::Apis::Core::Hashable
Constructor Details
#initialize(**args) ⇒ AttachedDisk
Returns a new instance of AttachedDisk
1678 1679 1680 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1678 def initialize(**args) update!(**args) end |
Instance Attribute Details
#auto_delete ⇒ Boolean Also known as: auto_delete?
Specifies whether the disk will be auto-deleted when the instance is deleted (
but not when the disk is detached from the instance).
Corresponds to the JSON property autoDelete
1586 1587 1588 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1586 def auto_delete @auto_delete end |
#boot ⇒ Boolean Also known as: boot?
Indicates that this is a boot disk. The virtual machine will use the first
partition of the disk for its root filesystem.
Corresponds to the JSON property boot
1593 1594 1595 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1593 def boot @boot end |
#device_name ⇒ String
Specifies a unique device name of your choice that is reflected into the /dev/
disk/by-id/google-* tree of a Linux operating system running within the
instance. This name can be used to reference the device for mounting, resizing,
and so on, from within the instance.
If not specified, the server chooses a default device name to apply to this
disk, in the form persistent-disks-x, where x is a number assigned by Google
Compute Engine. This field is only applicable for persistent disks.
Corresponds to the JSON property deviceName
1605 1606 1607 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1605 def device_name @device_name end |
#disk_encryption_key ⇒ Google::Apis::ComputeBeta::CustomerEncryptionKey
Represents a customer-supplied encryption key
Corresponds to the JSON property diskEncryptionKey
1610 1611 1612 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1610 def disk_encryption_key @disk_encryption_key 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
1617 1618 1619 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1617 def guest_os_features @guest_os_features end |
#index ⇒ Fixnum
[Output Only] A zero-based index to this disk, where 0 is reserved for the
boot disk. If you have many disks attached to an instance, each disk would
have a unique index number.
Corresponds to the JSON property index
1624 1625 1626 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1624 def index @index end |
#initialize_params ⇒ Google::Apis::ComputeBeta::AttachedDiskInitializeParams
[Input Only] Specifies the parameters for a new disk that will be created
alongside the new instance. Use initialization parameters to create boot disks
or local SSDs attached to the new instance.
This property is mutually exclusive with the source property; you can only
define one or the other, but not both.
Corresponds to the JSON property initializeParams
1633 1634 1635 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1633 def initialize_params @initialize_params end |
#interface ⇒ String
Specifies the disk interface to use for attaching this disk, which is either
SCSI or NVME. The default is SCSI. Persistent disks must always use SCSI and
the request will fail if you attempt to attach a persistent disk in any other
format than SCSI. Local SSDs can use either NVME or SCSI. For performance
characteristics of SCSI over NVMe, see Local SSD performance.
Corresponds to the JSON property interface
1642 1643 1644 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1642 def interface @interface end |
#kind ⇒ String
[Output Only] Type of the resource. Always compute#attachedDisk for attached
disks.
Corresponds to the JSON property kind
1648 1649 1650 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1648 def kind @kind end |
#licenses ⇒ Array<String>
[Output Only] Any valid publicly visible licenses.
Corresponds to the JSON property licenses
1653 1654 1655 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1653 def licenses @licenses end |
#mode ⇒ String
The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not
specified, the default is to attach the disk in READ_WRITE mode.
Corresponds to the JSON property mode
1659 1660 1661 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1659 def mode @mode end |
#source ⇒ String
Specifies a valid partial or full URL to an existing Persistent Disk resource.
When creating a new instance, one of initializeParams.sourceImage or disks.
source is required except for local SSD.
If desired, you can also attach existing non-root persistent disks using this
property. This field is only applicable for persistent disks.
Note that for InstanceTemplate, specify the disk name, not the URL for the
disk.
Corresponds to the JSON property source
1670 1671 1672 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1670 def source @source end |
#type ⇒ String
Specifies the type of the disk, either SCRATCH or PERSISTENT. If not specified,
the default is PERSISTENT.
Corresponds to the JSON property type
1676 1677 1678 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1676 def type @type end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1683 def update!(**args) @auto_delete = args[:auto_delete] if args.key?(:auto_delete) @boot = args[:boot] if args.key?(:boot) @device_name = args[:device_name] if args.key?(:device_name) @disk_encryption_key = args[:disk_encryption_key] if args.key?(:disk_encryption_key) @guest_os_features = args[:guest_os_features] if args.key?(:guest_os_features) @index = args[:index] if args.key?(:index) @initialize_params = args[:initialize_params] if args.key?(:initialize_params) @interface = args[:interface] if args.key?(:interface) @kind = args[:kind] if args.key?(:kind) @licenses = args[:licenses] if args.key?(:licenses) @mode = args[:mode] if args.key?(:mode) @source = args[:source] if args.key?(:source) @type = args[:type] if args.key?(:type) end |