Class: Google::Apis::BackupdrV1::ComputeInstanceRestoreProperties
- Inherits:
-
Object
- Object
- Google::Apis::BackupdrV1::ComputeInstanceRestoreProperties
- 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
ComputeInstanceRestoreProperties represents Compute Engine instance properties to be overridden during restore.
Instance Attribute Summary collapse
-
#advanced_machine_features ⇒ Google::Apis::BackupdrV1::AdvancedMachineFeatures
Specifies options for controlling advanced machine features.
-
#can_ip_forward ⇒ Boolean
(also: #can_ip_forward?)
Optional.
-
#confidential_instance_config ⇒ Google::Apis::BackupdrV1::ConfidentialInstanceConfig
A set of Confidential Instance options.
-
#deletion_protection ⇒ Boolean
(also: #deletion_protection?)
Optional.
-
#description ⇒ String
Optional.
-
#disks ⇒ Array<Google::Apis::BackupdrV1::AttachedDisk>
Optional.
-
#display_device ⇒ Google::Apis::BackupdrV1::DisplayDevice
A set of Display Device options Corresponds to the JSON property
displayDevice. -
#guest_accelerators ⇒ Array<Google::Apis::BackupdrV1::AcceleratorConfig>
Optional.
-
#hostname ⇒ String
Optional.
-
#instance_encryption_key ⇒ Google::Apis::BackupdrV1::CustomerEncryptionKey
A customer-supplied encryption key.
-
#key_revocation_action_type ⇒ String
Optional.
-
#labels ⇒ Hash<String,String>
Optional.
-
#machine_type ⇒ String
Optional.
-
#metadata ⇒ Google::Apis::BackupdrV1::Metadata
A metadata key/value entry.
-
#min_cpu_platform ⇒ String
Optional.
-
#name ⇒ String
Required.
-
#network_interfaces ⇒ Array<Google::Apis::BackupdrV1::NetworkInterface>
Optional.
-
#network_performance_config ⇒ Google::Apis::BackupdrV1::NetworkPerformanceConfig
Network performance configuration.
-
#params ⇒ Google::Apis::BackupdrV1::InstanceParams
Additional instance params.
-
#private_ipv6_google_access ⇒ String
Optional.
-
#reservation_affinity ⇒ Google::Apis::BackupdrV1::AllocationAffinity
Specifies the reservations that this instance can consume from.
-
#resource_policies ⇒ Array<String>
Optional.
-
#scheduling ⇒ Google::Apis::BackupdrV1::Scheduling
Sets the scheduling options for an Instance.
-
#service_accounts ⇒ Array<Google::Apis::BackupdrV1::ServiceAccount>
Optional.
-
#tags ⇒ Google::Apis::BackupdrV1::Tags
A set of instance tags.
Instance Method Summary collapse
-
#initialize(**args) ⇒ ComputeInstanceRestoreProperties
constructor
A new instance of ComputeInstanceRestoreProperties.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ ComputeInstanceRestoreProperties
Returns a new instance of ComputeInstanceRestoreProperties.
2372 2373 2374 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2372 def initialize(**args) update!(**args) end |
Instance Attribute Details
#advanced_machine_features ⇒ Google::Apis::BackupdrV1::AdvancedMachineFeatures
Specifies options for controlling advanced machine features.
Corresponds to the JSON property advancedMachineFeatures
2233 2234 2235 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2233 def advanced_machine_features @advanced_machine_features end |
#can_ip_forward ⇒ Boolean Also known as: can_ip_forward?
Optional. Allows this instance to send and receive packets with non-matching
destination or source IPs.
Corresponds to the JSON property canIpForward
2239 2240 2241 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2239 def can_ip_forward @can_ip_forward end |
#confidential_instance_config ⇒ Google::Apis::BackupdrV1::ConfidentialInstanceConfig
A set of Confidential Instance options.
Corresponds to the JSON property confidentialInstanceConfig
2245 2246 2247 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2245 def confidential_instance_config @confidential_instance_config end |
#deletion_protection ⇒ Boolean Also known as: deletion_protection?
Optional. Whether the resource should be protected against deletion.
Corresponds to the JSON property deletionProtection
2250 2251 2252 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2250 def deletion_protection @deletion_protection end |
#description ⇒ String
Optional. An optional description of this resource. Provide this property when
you create the resource.
Corresponds to the JSON property description
2257 2258 2259 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2257 def description @description end |
#disks ⇒ Array<Google::Apis::BackupdrV1::AttachedDisk>
Optional. Array of disks associated with this instance. Persistent disks must
be created before you can assign them. Source regional persistent disks will
be restored with default replica zones if not specified.
Corresponds to the JSON property disks
2264 2265 2266 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2264 def disks @disks end |
#display_device ⇒ Google::Apis::BackupdrV1::DisplayDevice
A set of Display Device options
Corresponds to the JSON property displayDevice
2269 2270 2271 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2269 def display_device @display_device end |
#guest_accelerators ⇒ Array<Google::Apis::BackupdrV1::AcceleratorConfig>
Optional. A list of the type and count of accelerator cards attached to the
instance.
Corresponds to the JSON property guestAccelerators
2275 2276 2277 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2275 def guest_accelerators @guest_accelerators end |
#hostname ⇒ String
Optional. Specifies the hostname of the instance. The specified hostname must
be RFC1035 compliant. If hostname is not specified, the default hostname is [
INSTANCE_NAME].c.[PROJECT_ID].internal when using the global DNS, and [
INSTANCE_NAME].[ZONE].c.[PROJECT_ID].internal when using zonal DNS.
Corresponds to the JSON property hostname
2283 2284 2285 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2283 def hostname @hostname end |
#instance_encryption_key ⇒ Google::Apis::BackupdrV1::CustomerEncryptionKey
A customer-supplied encryption key.
Corresponds to the JSON property instanceEncryptionKey
2288 2289 2290 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2288 def instance_encryption_key @instance_encryption_key end |
#key_revocation_action_type ⇒ String
Optional. KeyRevocationActionType of the instance.
Corresponds to the JSON property keyRevocationActionType
2293 2294 2295 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2293 def key_revocation_action_type @key_revocation_action_type end |
#labels ⇒ Hash<String,String>
Optional. Labels to apply to this instance.
Corresponds to the JSON property labels
2298 2299 2300 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2298 def labels @labels end |
#machine_type ⇒ String
Optional. Full or partial URL of the machine type resource to use for this
instance.
Corresponds to the JSON property machineType
2304 2305 2306 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2304 def machine_type @machine_type end |
#metadata ⇒ Google::Apis::BackupdrV1::Metadata
A metadata key/value entry.
Corresponds to the JSON property metadata
2309 2310 2311 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2309 def @metadata end |
#min_cpu_platform ⇒ String
Optional. Minimum CPU platform to use for this instance.
Corresponds to the JSON property minCpuPlatform
2314 2315 2316 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2314 def min_cpu_platform @min_cpu_platform end |
#name ⇒ String
Required. Name of the compute instance.
Corresponds to the JSON property name
2319 2320 2321 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2319 def name @name end |
#network_interfaces ⇒ Array<Google::Apis::BackupdrV1::NetworkInterface>
Optional. An array of network configurations for this instance. These specify
how interfaces are configured to interact with other network services, such as
connecting to the internet. Multiple interfaces are supported per instance.
Required to restore in different project or region.
Corresponds to the JSON property networkInterfaces
2327 2328 2329 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2327 def network_interfaces @network_interfaces end |
#network_performance_config ⇒ Google::Apis::BackupdrV1::NetworkPerformanceConfig
Network performance configuration.
Corresponds to the JSON property networkPerformanceConfig
2332 2333 2334 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2332 def network_performance_config @network_performance_config end |
#params ⇒ Google::Apis::BackupdrV1::InstanceParams
Additional instance params.
Corresponds to the JSON property params
2337 2338 2339 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2337 def params @params end |
#private_ipv6_google_access ⇒ String
Optional. The private IPv6 google access type for the VM. If not specified,
use INHERIT_FROM_SUBNETWORK as default.
Corresponds to the JSON property privateIpv6GoogleAccess
2343 2344 2345 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2343 def private_ipv6_google_access @private_ipv6_google_access end |
#reservation_affinity ⇒ Google::Apis::BackupdrV1::AllocationAffinity
Specifies the reservations that this instance can consume from.
Corresponds to the JSON property reservationAffinity
2348 2349 2350 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2348 def reservation_affinity @reservation_affinity end |
#resource_policies ⇒ Array<String>
Optional. Resource policies applied to this instance. By default, no resource
policies will be applied.
Corresponds to the JSON property resourcePolicies
2354 2355 2356 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2354 def resource_policies @resource_policies end |
#scheduling ⇒ Google::Apis::BackupdrV1::Scheduling
Sets the scheduling options for an Instance.
Corresponds to the JSON property scheduling
2359 2360 2361 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2359 def scheduling @scheduling end |
#service_accounts ⇒ Array<Google::Apis::BackupdrV1::ServiceAccount>
Optional. A list of service accounts, with their specified scopes, authorized
for this instance. Only one service account per VM instance is supported.
Corresponds to the JSON property serviceAccounts
2365 2366 2367 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2365 def service_accounts @service_accounts end |
#tags ⇒ Google::Apis::BackupdrV1::Tags
A set of instance tags.
Corresponds to the JSON property tags
2370 2371 2372 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2370 def @tags end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2377 def update!(**args) @advanced_machine_features = args[:advanced_machine_features] if args.key?(:advanced_machine_features) @can_ip_forward = args[:can_ip_forward] if args.key?(:can_ip_forward) @confidential_instance_config = args[:confidential_instance_config] if args.key?(:confidential_instance_config) @deletion_protection = args[:deletion_protection] if args.key?(:deletion_protection) @description = args[:description] if args.key?(:description) @disks = args[:disks] if args.key?(:disks) @display_device = args[:display_device] if args.key?(:display_device) @guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators) @hostname = args[:hostname] if args.key?(:hostname) @instance_encryption_key = args[:instance_encryption_key] if args.key?(:instance_encryption_key) @key_revocation_action_type = args[:key_revocation_action_type] if args.key?(:key_revocation_action_type) @labels = args[:labels] if args.key?(:labels) @machine_type = args[:machine_type] if args.key?(:machine_type) @metadata = args[:metadata] if args.key?(:metadata) @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform) @name = args[:name] if args.key?(:name) @network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces) @network_performance_config = args[:network_performance_config] if args.key?(:network_performance_config) @params = args[:params] if args.key?(:params) @private_ipv6_google_access = args[:private_ipv6_google_access] if args.key?(:private_ipv6_google_access) @reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity) @resource_policies = args[:resource_policies] if args.key?(:resource_policies) @scheduling = args[:scheduling] if args.key?(:scheduling) @service_accounts = args[:service_accounts] if args.key?(:service_accounts) @tags = args[:tags] if args.key?(:tags) end |