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.



3161
3162
3163
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3161

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)


3066
3067
3068
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3066

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)


3072
3073
3074
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3072

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)


3078
3079
3080
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3078

def description
  @description
end

#disk_encryption_keyGoogle::Apis::BackupdrV1::CustomerEncryptionKey

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



3083
3084
3085
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3083

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)


3089
3090
3091
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3089

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



3096
3097
3098
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3096

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>)


3102
3103
3104
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3102

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>)


3109
3110
3111
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3109

def licenses
  @licenses
end

#nameString

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

Returns:

  • (String)


3114
3115
3116
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3114

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)


3120
3121
3122
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3120

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)


3126
3127
3128
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3126

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)


3132
3133
3134
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3132

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>)


3137
3138
3139
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3137

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>)


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

def resource_policy
  @resource_policy
end

#size_gbFixnum

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

Returns:

  • (Fixnum)


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

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)


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

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)


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

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3166

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