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.



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

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



4879
4880
4881
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4879

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)


4884
4885
4886
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4884

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



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

def compute_scheduling
  @compute_scheduling
end

#disk_typeString

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

Returns:

  • (String)


4896
4897
4898
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4896

def disk_type
  @disk_type
end

#external_ipString

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

Returns:

  • (String)


4901
4902
4903
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4901

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)


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

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


4912
4913
4914
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4912

def labels
  @labels
end

#license_typeString

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

Returns:

  • (String)


4917
4918
4919
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4917

def license_type
  @license_type
end

#machine_typeString

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

Returns:

  • (String)


4922
4923
4924
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4922

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)


4927
4928
4929
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4927

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


4932
4933
4934
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4932

def 
  
end

#nameString

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

Returns:

  • (String)


4937
4938
4939
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4937

def name
  @name
end

#networkString

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

Returns:

  • (String)


4942
4943
4944
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4942

def network
  @network
end

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

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



4947
4948
4949
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4947

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


4952
4953
4954
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4952

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)


4957
4958
4959
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4957

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)


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

def secure_boot
  @secure_boot
end

#service_accountString

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

Returns:

  • (String)


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

def 
  
end

#subnetworkString

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

Returns:

  • (String)


4974
4975
4976
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4974

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)


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

def target_project
  @target_project
end

#zoneString

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

Returns:

  • (String)


4985
4986
4987
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4985

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



4992
4993
4994
4995
4996
4997
4998
4999
5000
5001
5002
5003
5004
5005
5006
5007
5008
5009
5010
5011
5012
5013
5014
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 4992

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