Class: Google::Apis::BaremetalsolutionV2::Instance

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/baremetalsolution_v2/classes.rb,
lib/google/apis/baremetalsolution_v2/representations.rb,
lib/google/apis/baremetalsolution_v2/representations.rb

Overview

A server.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Instance

Returns a new instance of Instance.



296
297
298
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 296

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

Instance Attribute Details

#create_timeString

Output only. Create a time stamp. Corresponds to the JSON property createTime

Returns:

  • (String)


207
208
209
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 207

def create_time
  @create_time
end

#hyperthreading_enabledBoolean Also known as: hyperthreading_enabled?

True if you enable hyperthreading for the server, otherwise false. The default value is false. Corresponds to the JSON property hyperthreadingEnabled

Returns:

  • (Boolean)


213
214
215
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 213

def hyperthreading_enabled
  @hyperthreading_enabled
end

#idString

An identifier for the Instance, generated by the backend. Corresponds to the JSON property id

Returns:

  • (String)


219
220
221
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 219

def id
  @id
end

#interactive_serial_console_enabledBoolean Also known as: interactive_serial_console_enabled?

True if the interactive serial console feature is enabled for the instance, false otherwise. The default value is false. Corresponds to the JSON property interactiveSerialConsoleEnabled

Returns:

  • (Boolean)


225
226
227
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 225

def interactive_serial_console_enabled
  @interactive_serial_console_enabled
end

#labelsHash<String,String>

Labels as key value pairs. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


231
232
233
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 231

def labels
  @labels
end

#logical_interfacesArray<Google::Apis::BaremetalsolutionV2::GoogleCloudBaremetalsolutionV2LogicalInterface>

List of logical interfaces for the instance. The number of logical interfaces will be the same as number of hardware bond/nic on the chosen network template. For the non-multivlan configurations (for eg, existing servers) that use existing default network template (bondaa-bondaa), both the Instance.networks field and the Instance.logical_interfaces fields will be filled to ensure backward compatibility. For the others, only Instance.logical_interfaces will be filled. Corresponds to the JSON property logicalInterfaces



242
243
244
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 242

def logical_interfaces
  @logical_interfaces
end

#lunsArray<Google::Apis::BaremetalsolutionV2::Lun>

List of LUNs associated with this server. Corresponds to the JSON property luns



247
248
249
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 247

def luns
  @luns
end

#machine_typeString

The server type. Available server types Corresponds to the JSON property machineType

Returns:

  • (String)


253
254
255
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 253

def machine_type
  @machine_type
end

#nameString

Output only. The resource name of this Instance. Resource names are schemeless URIs that follow the conventions in https://cloud.google.com/apis/ design/resource_names. Format: projects/project/locations/location/ instances/instance` Corresponds to the JSON propertyname`

Returns:

  • (String)


261
262
263
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 261

def name
  @name
end

#network_templateString

Instance network template name. For eg, bondaa-bondaa, bondab-nic, etc. Generally, the template name follows the syntax of "bond" or "nic". Corresponds to the JSON property networkTemplate

Returns:

  • (String)


267
268
269
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 267

def network_template
  @network_template
end

#networksArray<Google::Apis::BaremetalsolutionV2::Network>

List of networks associated with this server. Corresponds to the JSON property networks



272
273
274
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 272

def networks
  @networks
end

#os_imageString

The OS image currently installed on the server. Corresponds to the JSON property osImage

Returns:

  • (String)


277
278
279
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 277

def os_image
  @os_image
end

#podString

Immutable. Pod name. Pod is an independent part of infrastructure. Instance can be connected to the assets (networks, volumes) allocated in the same pod only. Corresponds to the JSON property pod

Returns:

  • (String)


284
285
286
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 284

def pod
  @pod
end

#stateString

The state of the server. Corresponds to the JSON property state

Returns:

  • (String)


289
290
291
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 289

def state
  @state
end

#update_timeString

Output only. Update a time stamp. Corresponds to the JSON property updateTime

Returns:

  • (String)


294
295
296
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 294

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 301

def update!(**args)
  @create_time = args[:create_time] if args.key?(:create_time)
  @hyperthreading_enabled = args[:hyperthreading_enabled] if args.key?(:hyperthreading_enabled)
  @id = args[:id] if args.key?(:id)
  @interactive_serial_console_enabled = args[:interactive_serial_console_enabled] if args.key?(:interactive_serial_console_enabled)
  @labels = args[:labels] if args.key?(:labels)
  @logical_interfaces = args[:logical_interfaces] if args.key?(:logical_interfaces)
  @luns = args[:luns] if args.key?(:luns)
  @machine_type = args[:machine_type] if args.key?(:machine_type)
  @name = args[:name] if args.key?(:name)
  @network_template = args[:network_template] if args.key?(:network_template)
  @networks = args[:networks] if args.key?(:networks)
  @os_image = args[:os_image] if args.key?(:os_image)
  @pod = args[:pod] if args.key?(:pod)
  @state = args[:state] if args.key?(:state)
  @update_time = args[:update_time] if args.key?(:update_time)
end