Class: Google::Apis::ComputeAlpha::SavedAttachedDisk

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
generated/google/apis/compute_alpha/classes.rb,
generated/google/apis/compute_alpha/representations.rb,
generated/google/apis/compute_alpha/representations.rb

Overview

An instance-attached disk resource.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Google::Apis::Core::JsonObjectSupport

#to_json

Methods included from Google::Apis::Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ SavedAttachedDisk

Returns a new instance of SavedAttachedDisk.



29813
29814
29815
# File 'generated/google/apis/compute_alpha/classes.rb', line 29813

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#auto_deleteBoolean 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

Returns:

  • (Boolean)


29723
29724
29725
# File 'generated/google/apis/compute_alpha/classes.rb', line 29723

def auto_delete
  @auto_delete
end

#bootBoolean 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

Returns:

  • (Boolean)


29730
29731
29732
# File 'generated/google/apis/compute_alpha/classes.rb', line 29730

def boot
  @boot
end

#device_nameString

Specifies the name of the disk attached to the source instance. Corresponds to the JSON property deviceName

Returns:

  • (String)


29736
29737
29738
# File 'generated/google/apis/compute_alpha/classes.rb', line 29736

def device_name
  @device_name
end

#disk_encryption_keyGoogle::Apis::ComputeAlpha::CustomerEncryptionKey

Represents a customer-supplied encryption key Corresponds to the JSON property diskEncryptionKey



29741
29742
29743
# File 'generated/google/apis/compute_alpha/classes.rb', line 29741

def disk_encryption_key
  @disk_encryption_key
end

#disk_size_gbFixnum

The size of the disk in base-2 GB. Corresponds to the JSON property diskSizeGb

Returns:

  • (Fixnum)


29746
29747
29748
# File 'generated/google/apis/compute_alpha/classes.rb', line 29746

def disk_size_gb
  @disk_size_gb
end

#disk_typeString

[Output Only] URL of the disk type resource. For example: projects/project/ zones/zone/diskTypes/pd-standard or pd-ssd Corresponds to the JSON property diskType

Returns:

  • (String)


29752
29753
29754
# File 'generated/google/apis/compute_alpha/classes.rb', line 29752

def disk_type
  @disk_type
end

#guest_os_featuresArray<Google::Apis::ComputeAlpha::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



29759
29760
29761
# File 'generated/google/apis/compute_alpha/classes.rb', line 29759

def guest_os_features
  @guest_os_features
end

#indexFixnum

Specifies zero-based index of the disk that is attached to the source instance. Corresponds to the JSON property index

Returns:

  • (Fixnum)


29764
29765
29766
# File 'generated/google/apis/compute_alpha/classes.rb', line 29764

def index
  @index
end

#interfaceString

Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. Corresponds to the JSON property interface

Returns:

  • (String)


29770
29771
29772
# File 'generated/google/apis/compute_alpha/classes.rb', line 29770

def interface
  @interface
end

#kindString

[Output Only] Type of the resource. Always compute#attachedDisk for attached disks. Corresponds to the JSON property kind

Returns:

  • (String)


29776
29777
29778
# File 'generated/google/apis/compute_alpha/classes.rb', line 29776

def kind
  @kind
end

#licensesArray<String>

[Output Only] Any valid publicly visible licenses. Corresponds to the JSON property licenses

Returns:

  • (Array<String>)


29781
29782
29783
# File 'generated/google/apis/compute_alpha/classes.rb', line 29781

def licenses
  @licenses
end

#modeString

The mode in which this disk is attached to the source instance, either READ_WRITE or READ_ONLY. Corresponds to the JSON property mode

Returns:

  • (String)


29787
29788
29789
# File 'generated/google/apis/compute_alpha/classes.rb', line 29787

def mode
  @mode
end

#sourceString

Specifies a URL of the disk attached to the source instance. Corresponds to the JSON property source

Returns:

  • (String)


29792
29793
29794
# File 'generated/google/apis/compute_alpha/classes.rb', line 29792

def source
  @source
end

#storage_bytesFixnum

[Output Only] A size of the storage used by the disk's snapshot by this machine image. Corresponds to the JSON property storageBytes

Returns:

  • (Fixnum)


29798
29799
29800
# File 'generated/google/apis/compute_alpha/classes.rb', line 29798

def storage_bytes
  @storage_bytes
end

#storage_bytes_statusString

[Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date. Corresponds to the JSON property storageBytesStatus

Returns:

  • (String)


29806
29807
29808
# File 'generated/google/apis/compute_alpha/classes.rb', line 29806

def storage_bytes_status
  @storage_bytes_status
end

#typeString

Specifies the type of the attached disk, either SCRATCH or PERSISTENT. Corresponds to the JSON property type

Returns:

  • (String)


29811
29812
29813
# File 'generated/google/apis/compute_alpha/classes.rb', line 29811

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



29818
29819
29820
29821
29822
29823
29824
29825
29826
29827
29828
29829
29830
29831
29832
29833
29834
29835
# File 'generated/google/apis/compute_alpha/classes.rb', line 29818

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)
  @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
  @disk_type = args[:disk_type] if args.key?(:disk_type)
  @guest_os_features = args[:guest_os_features] if args.key?(:guest_os_features)
  @index = args[:index] if args.key?(:index)
  @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)
  @storage_bytes = args[:storage_bytes] if args.key?(:storage_bytes)
  @storage_bytes_status = args[:storage_bytes_status] if args.key?(:storage_bytes_status)
  @type = args[:type] if args.key?(:type)
end