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.
2397 2398 2399 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2397 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
2258 2259 2260 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2258 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
2264 2265 2266 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2264 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
2270 2271 2272 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2270 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
2275 2276 2277 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2275 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
2282 2283 2284 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2282 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
2289 2290 2291 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2289 def disks @disks end |
#display_device ⇒ Google::Apis::BackupdrV1::DisplayDevice
A set of Display Device options
Corresponds to the JSON property displayDevice
2294 2295 2296 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2294 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
2300 2301 2302 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2300 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
2308 2309 2310 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2308 def hostname @hostname end |
#instance_encryption_key ⇒ Google::Apis::BackupdrV1::CustomerEncryptionKey
A customer-supplied encryption key.
Corresponds to the JSON property instanceEncryptionKey
2313 2314 2315 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2313 def instance_encryption_key @instance_encryption_key end |
#key_revocation_action_type ⇒ String
Optional. KeyRevocationActionType of the instance.
Corresponds to the JSON property keyRevocationActionType
2318 2319 2320 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2318 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
2323 2324 2325 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2323 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
2329 2330 2331 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2329 def machine_type @machine_type end |
#metadata ⇒ Google::Apis::BackupdrV1::Metadata
A metadata key/value entry.
Corresponds to the JSON property metadata
2334 2335 2336 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2334 def @metadata end |
#min_cpu_platform ⇒ String
Optional. Minimum CPU platform to use for this instance.
Corresponds to the JSON property minCpuPlatform
2339 2340 2341 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2339 def min_cpu_platform @min_cpu_platform end |
#name ⇒ String
Required. Name of the compute instance.
Corresponds to the JSON property name
2344 2345 2346 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2344 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
2352 2353 2354 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2352 def network_interfaces @network_interfaces end |
#network_performance_config ⇒ Google::Apis::BackupdrV1::NetworkPerformanceConfig
Network performance configuration.
Corresponds to the JSON property networkPerformanceConfig
2357 2358 2359 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2357 def network_performance_config @network_performance_config end |
#params ⇒ Google::Apis::BackupdrV1::InstanceParams
Additional instance params.
Corresponds to the JSON property params
2362 2363 2364 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2362 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
2368 2369 2370 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2368 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
2373 2374 2375 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2373 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
2379 2380 2381 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2379 def resource_policies @resource_policies end |
#scheduling ⇒ Google::Apis::BackupdrV1::Scheduling
Sets the scheduling options for an Instance.
Corresponds to the JSON property scheduling
2384 2385 2386 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2384 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
2390 2391 2392 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2390 def service_accounts @service_accounts end |
#tags ⇒ Google::Apis::BackupdrV1::Tags
A set of instance tags.
Corresponds to the JSON property tags
2395 2396 2397 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2395 def @tags end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 |
# File 'lib/google/apis/backupdr_v1/classes.rb', line 2402 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 |