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.



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

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)


3058
3059
3060
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3058

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)


3064
3065
3066
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3064

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)


3070
3071
3072
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3070

def description
  @description
end

#disk_encryption_keyGoogle::Apis::BackupdrV1::CustomerEncryptionKey

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



3075
3076
3077
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3075

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)


3081
3082
3083
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3081

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



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

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


3094
3095
3096
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3094

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


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

def licenses
  @licenses
end

#nameString

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

Returns:

  • (String)


3106
3107
3108
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3106

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)


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

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)


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

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)


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

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


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

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


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

def resource_policy
  @resource_policy
end

#size_gbFixnum

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

Returns:

  • (Fixnum)


3139
3140
3141
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3139

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)


3145
3146
3147
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3145

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)


3151
3152
3153
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3151

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
# File 'lib/google/apis/backupdr_v1/classes.rb', line 3158

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