Class: Google::Apis::VmmigrationV1alpha1::ComputeEngineTargetDefaults

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

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

Returns a new instance of ComputeEngineTargetDefaults.



1371
1372
1373
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1371

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

Instance Attribute Details

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

Optional. AdaptationModifiers are the set of modifiers used during OS adaptation. Corresponds to the JSON property adaptationModifiers



1228
1229
1230
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1228

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


1233
1234
1235
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1233

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



1238
1239
1240
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1238

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)


1245
1246
1247
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1245

def boot_conversion
  @boot_conversion
end

#boot_optionString

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

Returns:

  • (String)


1250
1251
1252
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1250

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



1257
1258
1259
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1257

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


1268
1269
1270
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1268

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)


1273
1274
1275
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1273

def disk_type
  @disk_type
end

#enable_integrity_monitoringBoolean Also known as: enable_integrity_monitoring?

Optional. Defines whether the instance has integrity monitoring enabled. This can be set to true only if the VM boot option is EFI, and vTPM is enabled. Corresponds to the JSON property enableIntegrityMonitoring

Returns:

  • (Boolean)


1279
1280
1281
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1279

def enable_integrity_monitoring
  @enable_integrity_monitoring
end

#enable_vtpmBoolean Also known as: enable_vtpm?

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

Returns:

  • (Boolean)


1286
1287
1288
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1286

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



1292
1293
1294
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1292

def encryption
  @encryption
end

#hostnameString

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

Returns:

  • (String)


1297
1298
1299
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1297

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


1302
1303
1304
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1302

def labels
  @labels
end

#license_typeString

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

Returns:

  • (String)


1307
1308
1309
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1307

def license_type
  @license_type
end

#machine_typeString

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

Returns:

  • (String)


1312
1313
1314
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1312

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)


1317
1318
1319
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1317

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


1322
1323
1324
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1322

def 
  @metadata
end

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

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



1327
1328
1329
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1327

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


1332
1333
1334
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1332

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


1338
1339
1340
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1338

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)


1344
1345
1346
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1344

def 
  @service_account
end

#storage_poolString

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


1353
1354
1355
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1353

def storage_pool
  @storage_pool
end

#target_projectString

The full path of the resource of type TargetProject which represents the Compute Engine project in which to create this VM. Corresponds to the JSON property targetProject

Returns:

  • (String)


1359
1360
1361
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1359

def target_project
  @target_project
end

#vm_nameString

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

Returns:

  • (String)


1364
1365
1366
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1364

def vm_name
  @vm_name
end

#zoneString

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

Returns:

  • (String)


1369
1370
1371
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1369

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1376

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