Class: Google::Apis::BackupdrV1::DiskRestoreProperties

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/backupdr_v1/classes.rb,
lib/google/apis/backupdr_v1/representations.rb,
lib/google/apis/backupdr_v1/representations.rb

Overview

DiskRestoreProperties represents the properties of a Disk restore.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ DiskRestoreProperties

Returns a new instance of DiskRestoreProperties.



3206
3207
3208
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3206

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

Instance Attribute Details

#access_modeString

Optional. The access mode of the disk. Corresponds to the JSON property accessMode

Returns:

  • (String)


3111
3112
3113
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3111

def access_mode
  @access_mode
end

#architectureString

Optional. The architecture of the source disk. Valid values are ARM64 or X86_64. Corresponds to the JSON property architecture

Returns:

  • (String)


3117
3118
3119
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3117

def architecture
  @architecture
end

#descriptionString

Optional. An optional description of this resource. Provide this property when you create the resource. Corresponds to the JSON property description

Returns:

  • (String)


3123
3124
3125
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3123

def description
  @description
end

#disk_encryption_keyGoogle::Apis::BackupdrV1::CustomerEncryptionKey

A customer-supplied encryption key. Corresponds to the JSON property diskEncryptionKey



3128
3129
3130
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3128

def disk_encryption_key
  @disk_encryption_key
end

#enable_confidential_computeBoolean Also known as: enable_confidential_compute?

Optional. Indicates whether this disk is using confidential compute mode. Encryption with a Cloud KMS key is required to enable this option. Corresponds to the JSON property enableConfidentialCompute

Returns:

  • (Boolean)


3134
3135
3136
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3134

def enable_confidential_compute
  @enable_confidential_compute
end

#guest_os_featureArray<Google::Apis::BackupdrV1::GuestOsFeature>

Optional. A list of features to enable in the guest operating system. This is applicable only for bootable images. Corresponds to the JSON property guestOsFeature



3141
3142
3143
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3141

def guest_os_feature
  @guest_os_feature
end

#labelsHash<String,String>

Optional. Labels to apply to this disk. These can be modified later using setLabels method. Label values can be empty. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


3147
3148
3149
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3147

def labels
  @labels
end

#licensesArray<String>

Optional. A list of publicly available licenses that are applicable to this backup. This is applicable if the original image had licenses attached, e.g. Windows image Corresponds to the JSON property licenses

Returns:

  • (Array<String>)


3154
3155
3156
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3154

def licenses
  @licenses
end

#nameString

Required. Name of the disk. Corresponds to the JSON property name

Returns:

  • (String)


3159
3160
3161
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3159

def name
  @name
end

#physical_block_size_bytesFixnum

Optional. Physical block size of the persistent disk, in bytes. If not present in a request, a default value is used. Currently, the supported size is 4096. Corresponds to the JSON property physicalBlockSizeBytes

Returns:

  • (Fixnum)


3165
3166
3167
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3165

def physical_block_size_bytes
  @physical_block_size_bytes
end

#provisioned_iopsFixnum

Optional. Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. Corresponds to the JSON property provisionedIops

Returns:

  • (Fixnum)


3171
3172
3173
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3171

def provisioned_iops
  @provisioned_iops
end

#provisioned_throughputFixnum

Optional. Indicates how much throughput to provision for the disk. This sets the number of throughput MB per second that the disk can handle. Corresponds to the JSON property provisionedThroughput

Returns:

  • (Fixnum)


3177
3178
3179
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3177

def provisioned_throughput
  @provisioned_throughput
end

#resource_manager_tagsHash<String,String>

Optional. Resource manager tags to be bound to the disk. Corresponds to the JSON property resourceManagerTags

Returns:

  • (Hash<String,String>)


3182
3183
3184
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3182

def resource_manager_tags
  @resource_manager_tags
end

#resource_policyArray<String>

Optional. Resource policies applied to this disk. Corresponds to the JSON property resourcePolicy

Returns:

  • (Array<String>)


3187
3188
3189
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3187

def resource_policy
  @resource_policy
end

#size_gbFixnum

Required. The size of the disk in GB. Corresponds to the JSON property sizeGb

Returns:

  • (Fixnum)


3192
3193
3194
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3192

def size_gb
  @size_gb
end

#storage_poolString

Optional. The storage pool in which the new disk is created. You can provide this as a partial or full URL to the resource. Corresponds to the JSON property storagePool

Returns:

  • (String)


3198
3199
3200
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3198

def storage_pool
  @storage_pool
end

#typeString

Required. URL of the disk type resource describing which disk type to use to create the disk. Corresponds to the JSON property type

Returns:

  • (String)


3204
3205
3206
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3204

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3211

def update!(**args)
  @access_mode = args[:access_mode] if args.key?(:access_mode)
  @architecture = args[:architecture] if args.key?(:architecture)
  @description = args[:description] if args.key?(:description)
  @disk_encryption_key = args[:disk_encryption_key] if args.key?(:disk_encryption_key)
  @enable_confidential_compute = args[:enable_confidential_compute] if args.key?(:enable_confidential_compute)
  @guest_os_feature = args[:guest_os_feature] if args.key?(:guest_os_feature)
  @labels = args[:labels] if args.key?(:labels)
  @licenses = args[:licenses] if args.key?(:licenses)
  @name = args[:name] if args.key?(:name)
  @physical_block_size_bytes = args[:physical_block_size_bytes] if args.key?(:physical_block_size_bytes)
  @provisioned_iops = args[:provisioned_iops] if args.key?(:provisioned_iops)
  @provisioned_throughput = args[:provisioned_throughput] if args.key?(:provisioned_throughput)
  @resource_manager_tags = args[:resource_manager_tags] if args.key?(:resource_manager_tags)
  @resource_policy = args[:resource_policy] if args.key?(:resource_policy)
  @size_gb = args[:size_gb] if args.key?(:size_gb)
  @storage_pool = args[:storage_pool] if args.key?(:storage_pool)
  @type = args[:type] if args.key?(:type)
end