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.



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

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


1221
1222
1223
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1221

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



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

def applied_license
  @applied_license
end

#boot_optionString

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

Returns:

  • (String)


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

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. Corresponds to the JSON property computeScheduling



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

def compute_scheduling
  @compute_scheduling
end

#disk_typeString

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

Returns:

  • (String)


1242
1243
1244
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1242

def disk_type
  @disk_type
end

#encryptionGoogle::Apis::VmmigrationV1alpha1::Encryption

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



1247
1248
1249
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1247

def encryption
  @encryption
end

#hostnameString

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

Returns:

  • (String)


1252
1253
1254
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1252

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


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

def labels
  @labels
end

#license_typeString

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

Returns:

  • (String)


1262
1263
1264
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1262

def license_type
  @license_type
end

#machine_typeString

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

Returns:

  • (String)


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

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)


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

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


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

def 
  @metadata
end

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

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



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

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


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

def network_tags
  @network_tags
end

#projectString

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

Returns:

  • (String)


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

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)


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

def secure_boot
  @secure_boot
end

#service_accountString

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

Returns:

  • (String)


1304
1305
1306
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1304

def 
  @service_account
end

#vm_nameString

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

Returns:

  • (String)


1309
1310
1311
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1309

def vm_name
  @vm_name
end

#zoneString

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

Returns:

  • (String)


1314
1315
1316
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1314

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 1321

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