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.



2402
2403
2404
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2402

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


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

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



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

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



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

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)


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

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)


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

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



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

def encryption
  @encryption
end

#hostnameString

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

Returns:

  • (String)


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

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


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

def labels
  @labels
end

#machine_typeString

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

Returns:

  • (String)


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

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)


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

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


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

def 
  @metadata
end

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

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



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

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


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

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)


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

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)


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

def 
  @service_account
end

#vm_nameString

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

Returns:

  • (String)


2400
2401
2402
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2400

def vm_name
  @vm_name
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2407

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