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
1120 1121 1122 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1120 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
1028 1029 1030 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1028 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
1035 1036 1037 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1035 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
1047 1048 1049 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1047 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
1052 1053 1054 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1052 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
1059 1060 1061 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1059 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
1066 1067 1068 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1066 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
1075 1076 1077 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1075 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
1084 1085 1086 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1084 def interface @interface end |
#kind ⇒ String
[Output Only] Type of the resource. Always compute#attachedDisk for attached
disks.
Corresponds to the JSON property kind
1090 1091 1092 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1090 def kind @kind end |
#licenses ⇒ Array<String>
[Output Only] Any valid publicly visible licenses.
Corresponds to the JSON property licenses
1095 1096 1097 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1095 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
1101 1102 1103 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1101 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
1112 1113 1114 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1112 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
1118 1119 1120 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1118 def type @type end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1125 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 |