Class: Google::Apis::VmmigrationV1::DisksMigrationVmTargetDefaults

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/vmmigration_v1/classes.rb,
lib/google/apis/vmmigration_v1/representations.rb,
lib/google/apis/vmmigration_v1/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.



2396
2397
2398
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2396

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


2313
2314
2315
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2313

def additional_licenses
  @additional_licenses
end

#boot_disk_defaultsGoogle::Apis::VmmigrationV1::BootDiskDefaults

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



2318
2319
2320
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2318

def boot_disk_defaults
  @boot_disk_defaults
end

#compute_schedulingGoogle::Apis::VmmigrationV1::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



2325
2326
2327
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2325

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)


2330
2331
2332
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2330

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)


2336
2337
2338
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2336

def enable_vtpm
  @enable_vtpm
end

#encryptionGoogle::Apis::VmmigrationV1::Encryption

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



2342
2343
2344
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2342

def encryption
  @encryption
end

#hostnameString

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

Returns:

  • (String)


2347
2348
2349
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2347

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


2352
2353
2354
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2352

def labels
  @labels
end

#machine_typeString

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

Returns:

  • (String)


2357
2358
2359
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2357

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)


2362
2363
2364
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2362

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


2367
2368
2369
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2367

def 
  
end

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

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



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

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


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

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)


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

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)


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

def 
  
end

#vm_nameString

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

Returns:

  • (String)


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

def vm_name
  @vm_name
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2401

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)
   = 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)
   = args[:service_account] if args.key?(:service_account)
  @vm_name = args[:vm_name] if args.key?(:vm_name)
end