Class: Google::Apis::ComputeV1::AttachedDisk
- Inherits:
-
Object
- Object
- Google::Apis::ComputeV1::AttachedDisk
- Defined in:
- generated/google/apis/compute_v1/classes.rb,
generated/google/apis/compute_v1/representations.rb,
generated/google/apis/compute_v1/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::ComputeV1::CustomerEncryptionKey
Represents a customer-supplied encryption key Corresponds to the JSON property
diskEncryptionKey
. -
#guest_os_features ⇒ Array<Google::Apis::ComputeV1::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::ComputeV1::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
1246 1247 1248 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1246 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
1152 1153 1154 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1152 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
1159 1160 1161 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1159 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-disk-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
1171 1172 1173 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1171 def device_name @device_name end |
#disk_encryption_key ⇒ Google::Apis::ComputeV1::CustomerEncryptionKey
Represents a customer-supplied encryption key
Corresponds to the JSON property diskEncryptionKey
1176 1177 1178 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1176 def disk_encryption_key @disk_encryption_key end |
#guest_os_features ⇒ Array<Google::Apis::ComputeV1::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
1183 1184 1185 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1183 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
1190 1191 1192 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1190 def index @index end |
#initialize_params ⇒ Google::Apis::ComputeV1::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
1199 1200 1201 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1199 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. TODO(b/131765817)
: Update documentation when NVME is supported.
Corresponds to the JSON property interface
1209 1210 1211 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1209 def interface @interface end |
#kind ⇒ String
[Output Only] Type of the resource. Always compute#attachedDisk for attached
disks.
Corresponds to the JSON property kind
1215 1216 1217 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1215 def kind @kind end |
#licenses ⇒ Array<String>
[Output Only] Any valid publicly visible licenses.
Corresponds to the JSON property licenses
1220 1221 1222 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1220 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
1226 1227 1228 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1226 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
initializeParams.sourceSnapshot 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
1238 1239 1240 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1238 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
1244 1245 1246 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1244 def type @type end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1251 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 |