Class: Google::Apis::VmmigrationV1alpha1::DisksMigrationVmTargetDefaults

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

Overview

Details for creation of a VM that migrated data disks will be attached to.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ DisksMigrationVmTargetDefaults

Returns a new instance of DisksMigrationVmTargetDefaults.



2443
2444
2445
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2443

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

Instance Attribute Details

#additional_licensesArray<String>

Optional. Additional licenses to assign to the VM. Corresponds to the JSON property additionalLicenses

Returns:

  • (Array<String>)


2360
2361
2362
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2360

def additional_licenses
  @additional_licenses
end

#boot_disk_defaultsGoogle::Apis::VmmigrationV1alpha1::BootDiskDefaults

BootDiskDefaults hold information about the boot disk of a VM. Corresponds to the JSON property bootDiskDefaults



2365
2366
2367
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2365

def boot_disk_defaults
  @boot_disk_defaults
end

#compute_schedulingGoogle::Apis::VmmigrationV1alpha1::ComputeScheduling

Scheduling information for VM on maintenance/restart behaviour and node allocation in sole tenant nodes. Options for instance behavior when the host machine undergoes maintenance that may temporarily impact instance performance. Corresponds to the JSON property computeScheduling



2372
2373
2374
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2372

def compute_scheduling
  @compute_scheduling
end

#enable_integrity_monitoringBoolean Also known as: enable_integrity_monitoring?

Optional. Defines whether the instance has integrity monitoring enabled. Corresponds to the JSON property enableIntegrityMonitoring

Returns:

  • (Boolean)


2377
2378
2379
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2377

def enable_integrity_monitoring
  @enable_integrity_monitoring
end

#enable_vtpmBoolean Also known as: enable_vtpm?

Optional. Defines whether the instance has vTPM enabled. Corresponds to the JSON property enableVtpm

Returns:

  • (Boolean)


2383
2384
2385
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2383

def enable_vtpm
  @enable_vtpm
end

#encryptionGoogle::Apis::VmmigrationV1alpha1::Encryption

Encryption message describes the details of the applied encryption. Corresponds to the JSON property encryption



2389
2390
2391
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2389

def encryption
  @encryption
end

#hostnameString

Optional. The hostname to assign to the VM. Corresponds to the JSON property hostname

Returns:

  • (String)


2394
2395
2396
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2394

def hostname
  @hostname
end

#labelsHash<String,String>

Optional. A map of labels to associate with the VM. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


2399
2400
2401
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2399

def labels
  @labels
end

#machine_typeString

Required. The machine type to create the VM with. Corresponds to the JSON property machineType

Returns:

  • (String)


2404
2405
2406
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2404

def machine_type
  @machine_type
end

#machine_type_seriesString

Optional. The machine type series to create the VM with. For presentation only. Corresponds to the JSON property machineTypeSeries

Returns:

  • (String)


2409
2410
2411
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2409

def machine_type_series
  @machine_type_series
end

#metadataHash<String,String>

Optional. The metadata key/value pairs to assign to the VM. Corresponds to the JSON property metadata

Returns:

  • (Hash<String,String>)


2414
2415
2416
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2414

def 
  @metadata
end

#network_interfacesArray<Google::Apis::VmmigrationV1alpha1::NetworkInterface>

Optional. NICs to attach to the VM. Corresponds to the JSON property networkInterfaces



2419
2420
2421
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2419

def network_interfaces
  @network_interfaces
end

#network_tagsArray<String>

Optional. A list of network tags to associate with the VM. Corresponds to the JSON property networkTags

Returns:

  • (Array<String>)


2424
2425
2426
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2424

def network_tags
  @network_tags
end

#secure_bootBoolean Also known as: secure_boot?

Optional. Defines whether the instance has Secure Boot enabled. This can be set to true only if the VM boot option is EFI. Corresponds to the JSON property secureBoot

Returns:

  • (Boolean)


2430
2431
2432
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2430

def secure_boot
  @secure_boot
end

#service_accountString

Optional. The service account to associate the VM with. Corresponds to the JSON property serviceAccount

Returns:

  • (String)


2436
2437
2438
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2436

def 
  @service_account
end

#vm_nameString

Required. The name of the VM to create. Corresponds to the JSON property vmName

Returns:

  • (String)


2441
2442
2443
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2441

def vm_name
  @vm_name
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2448

def update!(**args)
  @additional_licenses = args[:additional_licenses] if args.key?(:additional_licenses)
  @boot_disk_defaults = args[:boot_disk_defaults] if args.key?(:boot_disk_defaults)
  @compute_scheduling = args[:compute_scheduling] if args.key?(:compute_scheduling)
  @enable_integrity_monitoring = args[:enable_integrity_monitoring] if args.key?(:enable_integrity_monitoring)
  @enable_vtpm = args[:enable_vtpm] if args.key?(:enable_vtpm)
  @encryption = args[:encryption] if args.key?(:encryption)
  @hostname = args[:hostname] if args.key?(:hostname)
  @labels = args[:labels] if args.key?(:labels)
  @machine_type = args[:machine_type] if args.key?(:machine_type)
  @machine_type_series = args[:machine_type_series] if args.key?(:machine_type_series)
  @metadata = args[:metadata] if args.key?(:metadata)
  @network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
  @network_tags = args[:network_tags] if args.key?(:network_tags)
  @secure_boot = args[:secure_boot] if args.key?(:secure_boot)
  @service_account = args[:service_account] if args.key?(:service_account)
  @vm_name = args[:vm_name] if args.key?(:vm_name)
end