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.



2194
2195
2196
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2194

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



2087
2088
2089
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2087

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)


2092
2093
2094
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2092

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



2098
2099
2100
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2098

def compute_scheduling
  @compute_scheduling
end

#disk_typeString

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

Returns:

  • (String)


2103
2104
2105
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2103

def disk_type
  @disk_type
end

#external_ipString

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

Returns:

  • (String)


2108
2109
2110
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2108

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)


2114
2115
2116
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2114

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


2119
2120
2121
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2119

def labels
  @labels
end

#license_typeString

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

Returns:

  • (String)


2124
2125
2126
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2124

def license_type
  @license_type
end

#machine_typeString

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

Returns:

  • (String)


2129
2130
2131
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2129

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)


2134
2135
2136
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2134

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


2139
2140
2141
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2139

def 
  @metadata
end

#nameString

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

Returns:

  • (String)


2144
2145
2146
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2144

def name
  @name
end

#networkString

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

Returns:

  • (String)


2149
2150
2151
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2149

def network
  @network
end

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

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



2154
2155
2156
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2154

def network_interfaces
  @network_interfaces
end

#network_tagsArray<String>

A map of network tags to associate with the VM. Corresponds to the JSON property networkTags

Returns:

  • (Array<String>)


2159
2160
2161
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2159

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)


2164
2165
2166
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2164

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)


2170
2171
2172
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2170

def secure_boot
  @secure_boot
end

#service_accountString

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

Returns:

  • (String)


2176
2177
2178
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2176

def 
  @service_account
end

#subnetworkString

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

Returns:

  • (String)


2181
2182
2183
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2181

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)


2187
2188
2189
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2187

def target_project
  @target_project
end

#zoneString

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

Returns:

  • (String)


2192
2193
2194
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2192

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 2199

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