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.



4994
4995
4996
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4994

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



4886
4887
4888
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4886

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)


4891
4892
4893
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4891

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



4898
4899
4900
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4898

def compute_scheduling
  @compute_scheduling
end

#disk_typeString

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

Returns:

  • (String)


4903
4904
4905
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4903

def disk_type
  @disk_type
end

#external_ipString

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

Returns:

  • (String)


4908
4909
4910
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4908

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)


4914
4915
4916
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4914

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


4919
4920
4921
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4919

def labels
  @labels
end

#license_typeString

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

Returns:

  • (String)


4924
4925
4926
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4924

def license_type
  @license_type
end

#machine_typeString

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

Returns:

  • (String)


4929
4930
4931
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4929

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)


4934
4935
4936
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4934

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


4939
4940
4941
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4939

def 
  @metadata
end

#nameString

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

Returns:

  • (String)


4944
4945
4946
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4944

def name
  @name
end

#networkString

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

Returns:

  • (String)


4949
4950
4951
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4949

def network
  @network
end

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

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



4954
4955
4956
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4954

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


4959
4960
4961
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4959

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)


4964
4965
4966
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4964

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)


4970
4971
4972
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4970

def secure_boot
  @secure_boot
end

#service_accountString

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

Returns:

  • (String)


4976
4977
4978
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4976

def 
  @service_account
end

#subnetworkString

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

Returns:

  • (String)


4981
4982
4983
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4981

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)


4987
4988
4989
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4987

def target_project
  @target_project
end

#zoneString

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

Returns:

  • (String)


4992
4993
4994
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4992

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



4999
5000
5001
5002
5003
5004
5005
5006
5007
5008
5009
5010
5011
5012
5013
5014
5015
5016
5017
5018
5019
5020
5021
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4999

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