Class: Google::Apis::VmmigrationV1alpha1::TargetVmDetails

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

TargetVMDetails 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) ⇒ TargetVmDetails

Returns a new instance of TargetVmDetails.



4437
4438
4439
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4437

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

Instance Attribute Details

#applied_licenseGoogle::Apis::VmmigrationV1alpha1::AppliedLicense

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



4329
4330
4331
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4329

def applied_license
  @applied_license
end

#boot_optionString

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

Returns:

  • (String)


4334
4335
4336
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4334

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



4341
4342
4343
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4341

def compute_scheduling
  @compute_scheduling
end

#disk_typeString

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

Returns:

  • (String)


4346
4347
4348
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4346

def disk_type
  @disk_type
end

#external_ipString

The external IP to define in the VM. Corresponds to the JSON property externalIp

Returns:

  • (String)


4351
4352
4353
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4351

def external_ip
  @external_ip
end

#internal_ipString

The internal IP to define in the VM. The formats accepted are: ephemeral \ ipv4 address \ a named address resource full path. Corresponds to the JSON property internalIp

Returns:

  • (String)


4357
4358
4359
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4357

def internal_ip
  @internal_ip
end

#labelsHash<String,String>

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

Returns:

  • (Hash<String,String>)


4362
4363
4364
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4362

def labels
  @labels
end

#license_typeString

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

Returns:

  • (String)


4367
4368
4369
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4367

def license_type
  @license_type
end

#machine_typeString

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

Returns:

  • (String)


4372
4373
4374
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4372

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)


4377
4378
4379
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4377

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


4382
4383
4384
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4382

def 
  @metadata
end

#nameString

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

Returns:

  • (String)


4387
4388
4389
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4387

def name
  @name
end

#networkString

The network to connect the VM to. Corresponds to the JSON property network

Returns:

  • (String)


4392
4393
4394
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4392

def network
  @network
end

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

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



4397
4398
4399
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4397

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


4402
4403
4404
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4402

def network_tags
  @network_tags
end

#projectString

Output only. The project in which to create the VM. Corresponds to the JSON property project

Returns:

  • (String)


4407
4408
4409
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4407

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)


4413
4414
4415
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4413

def secure_boot
  @secure_boot
end

#service_accountString

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

Returns:

  • (String)


4419
4420
4421
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4419

def 
  @service_account
end

#subnetworkString

The subnetwork to connect the VM to. Corresponds to the JSON property subnetwork

Returns:

  • (String)


4424
4425
4426
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4424

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


4430
4431
4432
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4430

def target_project
  @target_project
end

#zoneString

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

Returns:

  • (String)


4435
4436
4437
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4435

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



4442
4443
4444
4445
4446
4447
4448
4449
4450
4451
4452
4453
4454
4455
4456
4457
4458
4459
4460
4461
4462
4463
4464
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4442

def update!(**args)
  @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)
  @external_ip = args[:external_ip] if args.key?(:external_ip)
  @internal_ip = args[:internal_ip] if args.key?(:internal_ip)
  @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)
  @name = args[:name] if args.key?(:name)
  @network = args[:network] if args.key?(:network)
  @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)
  @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
  @target_project = args[:target_project] if args.key?(:target_project)
  @zone = args[:zone] if args.key?(:zone)
end