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
1080 1081 1082 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1080 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
988 989 990 |
# File 'generated/google/apis/compute_v1/classes.rb', line 988 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
995 996 997 |
# File 'generated/google/apis/compute_v1/classes.rb', line 995 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
1007 1008 1009 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1007 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
1012 1013 1014 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1012 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
1019 1020 1021 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1019 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
1026 1027 1028 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1026 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
1035 1036 1037 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1035 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
1044 1045 1046 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1044 def interface @interface end |
#kind ⇒ String
[Output Only] Type of the resource. Always compute#attachedDisk for attached
disks.
Corresponds to the JSON property kind
1050 1051 1052 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1050 def kind @kind end |
#licenses ⇒ Array<String>
[Output Only] Any valid publicly visible licenses.
Corresponds to the JSON property licenses
1055 1056 1057 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1055 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
1061 1062 1063 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1061 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
1072 1073 1074 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1072 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
1078 1079 1080 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1078 def type @type end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 |
# File 'generated/google/apis/compute_v1/classes.rb', line 1085 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 |