Class: Google::Apis::VmmigrationV1::ComputeEngineTargetDetails

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

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.



1341
1342
1343
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1341

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

Instance Attribute Details

#additional_licensesArray<String>

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

Returns:

  • (Array<String>)


1226
1227
1228
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1226

def additional_licenses
  @additional_licenses
end

#applied_licenseGoogle::Apis::VmmigrationV1::AppliedLicense

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



1231
1232
1233
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1231

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)


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

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)


1243
1244
1245
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1243

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



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

def compute_scheduling
  @compute_scheduling
end

#disk_typeString

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

Returns:

  • (String)


1255
1256
1257
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1255

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)


1260
1261
1262
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1260

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)


1266
1267
1268
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1266

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



1272
1273
1274
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1272

def encryption
  @encryption
end

#hostnameString

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

Returns:

  • (String)


1277
1278
1279
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1277

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


1282
1283
1284
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1282

def labels
  @labels
end

#license_typeString

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

Returns:

  • (String)


1287
1288
1289
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1287

def license_type
  @license_type
end

#machine_typeString

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

Returns:

  • (String)


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

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)


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

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


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

def 
  @metadata
end

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

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



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

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


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

def network_tags
  @network_tags
end

#projectString

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

Returns:

  • (String)


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

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)


1323
1324
1325
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1323

def secure_boot
  @secure_boot
end

#service_accountString

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

Returns:

  • (String)


1329
1330
1331
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1329

def 
  @service_account
end

#vm_nameString

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

Returns:

  • (String)


1334
1335
1336
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1334

def vm_name
  @vm_name
end

#zoneString

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

Returns:

  • (String)


1339
1340
1341
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1339

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1346

def update!(**args)
  @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_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)
  @vm_name = args[:vm_name] if args.key?(:vm_name)
  @zone = args[:zone] if args.key?(:zone)
end