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
1266 1267 1268 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1266 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
1173 1174 1175 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1173 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
1180 1181 1182 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1180 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
1192 1193 1194 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1192 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
1197 1198 1199 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1197 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
1204 1205 1206 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1204 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
1211 1212 1213 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1211 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
1220 1221 1222 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1220 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
1230 1231 1232 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1230 def interface @interface end |
#kind ⇒ String
[Output Only] Type of the resource. Always compute#attachedDisk for attached
disks.
Corresponds to the JSON property kind
1236 1237 1238 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1236 def kind @kind end |
#licenses ⇒ Array<String>
[Output Only] Any valid publicly visible licenses.
Corresponds to the JSON property licenses
1241 1242 1243 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1241 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
1247 1248 1249 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1247 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
1258 1259 1260 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1258 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
1264 1265 1266 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1264 def type @type end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 |
# File 'generated/google/apis/compute_beta/classes.rb', line 1271 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 |