Class: Google::Apis::VmmigrationV1alpha1::ComputeEngineTargetDetails

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

ComputeEngineTargetDetails is a collection of details for creating a VM in a target Compute Engine project.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ ComputeEngineTargetDetails

Returns a new instance of ComputeEngineTargetDetails.



1559
1560
1561
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1559

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

Instance Attribute Details

#adaptation_modifiersArray<Google::Apis::VmmigrationV1alpha1::AdaptationModifier>

Optional. Modifiers to be used as configuration of the OS adaptation process. Corresponds to the JSON property adaptationModifiers



1419
1420
1421
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1419

def adaptation_modifiers
  @adaptation_modifiers
end

#additional_licensesArray<String>

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

Returns:

  • (Array<String>)


1424
1425
1426
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1424

def additional_licenses
  @additional_licenses
end

#applied_licenseGoogle::Apis::VmmigrationV1alpha1::AppliedLicense

AppliedLicense holds the license data returned by adaptation module report. Corresponds to the JSON property appliedLicense



1429
1430
1431
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1429

def applied_license
  @applied_license
end

#boot_conversionString

Optional. By default the virtual machine will keep its existing boot option. Setting this property will trigger an internal process which will convert the virtual machine from using the existing boot option to another. Corresponds to the JSON property bootConversion

Returns:

  • (String)


1436
1437
1438
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1436

def boot_conversion
  @boot_conversion
end

#boot_optionString

The VM Boot Option, as set in the source VM. Corresponds to the JSON property bootOption

Returns:

  • (String)


1441
1442
1443
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1441

def boot_option
  @boot_option
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



1448
1449
1450
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1448

def compute_scheduling
  @compute_scheduling
end

#disk_replica_zonesArray<String>

Optional. Additional replica zones of the target regional disks. If this list is not empty a regional disk will be created. The first supported zone would be the one stated in the zone field. The rest are taken from this list. Please refer to the regional disk creation API for further details about regional vs zonal disks. If not specified, a zonal disk will be created in the same zone the VM is created. Corresponds to the JSON property diskReplicaZones

Returns:

  • (Array<String>)


1459
1460
1461
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1459

def disk_replica_zones
  @disk_replica_zones
end

#disk_typeString

The disk type to use in the VM. Corresponds to the JSON property diskType

Returns:

  • (String)


1464
1465
1466
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1464

def disk_type
  @disk_type
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)


1469
1470
1471
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1469

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)


1475
1476
1477
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1475

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



1481
1482
1483
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1481

def encryption
  @encryption
end

#hostnameString

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

Returns:

  • (String)


1486
1487
1488
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1486

def hostname
  @hostname
end

#labelsHash<String,String>

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

Returns:

  • (Hash<String,String>)


1491
1492
1493
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1491

def labels
  @labels
end

#license_typeString

The license type to use in OS adaptation. Corresponds to the JSON property licenseType

Returns:

  • (String)


1496
1497
1498
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1496

def license_type
  @license_type
end

#machine_typeString

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

Returns:

  • (String)


1501
1502
1503
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1501

def machine_type
  @machine_type
end

#machine_type_seriesString

The machine type series to create the VM with. Corresponds to the JSON property machineTypeSeries

Returns:

  • (String)


1506
1507
1508
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1506

def machine_type_series
  @machine_type_series
end

#metadataHash<String,String>

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

Returns:

  • (Hash<String,String>)


1511
1512
1513
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1511

def 
  @metadata
end

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

List of NICs connected to this VM. Corresponds to the JSON property networkInterfaces



1516
1517
1518
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1516

def network_interfaces
  @network_interfaces
end

#network_tagsArray<String>

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

Returns:

  • (Array<String>)


1521
1522
1523
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1521

def network_tags
  @network_tags
end

#projectString

The Google Cloud target project ID or project name. Corresponds to the JSON property project

Returns:

  • (String)


1526
1527
1528
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1526

def project
  @project
end

#secure_bootBoolean Also known as: secure_boot?

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)


1532
1533
1534
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1532

def secure_boot
  @secure_boot
end

#service_accountString

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

Returns:

  • (String)


1538
1539
1540
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1538

def 
  @service_account
end

#storage_poolString

Optional. The storage pool used for the VM disks. If specified this will be the storage pool in which the disk is created. This is the full path of the storage pool resource, for example: "projects/my-project/zones/us-central1-a/ storagePools/my-storage-pool". The storage pool must be in the same project and zone as the target disks. The storage pool's type must match the disk type. Corresponds to the JSON property storagePool

Returns:

  • (String)


1547
1548
1549
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1547

def storage_pool
  @storage_pool
end

#vm_nameString

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

Returns:

  • (String)


1552
1553
1554
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1552

def vm_name
  @vm_name
end

#zoneString

The zone in which to create the VM. Corresponds to the JSON property zone

Returns:

  • (String)


1557
1558
1559
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1557

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1564

def update!(**args)
  @adaptation_modifiers = args[:adaptation_modifiers] if args.key?(:adaptation_modifiers)
  @additional_licenses = args[:additional_licenses] if args.key?(:additional_licenses)
  @applied_license = args[:applied_license] if args.key?(:applied_license)
  @boot_conversion = args[:boot_conversion] if args.key?(:boot_conversion)
  @boot_option = args[:boot_option] if args.key?(:boot_option)
  @compute_scheduling = args[:compute_scheduling] if args.key?(:compute_scheduling)
  @disk_replica_zones = args[:disk_replica_zones] if args.key?(:disk_replica_zones)
  @disk_type = args[:disk_type] if args.key?(:disk_type)
  @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)
  @license_type = args[:license_type] if args.key?(:license_type)
  @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)
  @project = args[:project] if args.key?(:project)
  @secure_boot = args[:secure_boot] if args.key?(:secure_boot)
  @service_account = args[:service_account] if args.key?(:service_account)
  @storage_pool = args[:storage_pool] if args.key?(:storage_pool)
  @vm_name = args[:vm_name] if args.key?(:vm_name)
  @zone = args[:zone] if args.key?(:zone)
end