Class: Google::Apis::BaremetalsolutionV2::InstanceConfig
- Inherits:
-
Object
- Object
- Google::Apis::BaremetalsolutionV2::InstanceConfig
- 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
Configuration parameters for a new instance.
Instance Attribute Summary collapse
-
#account_networks_enabled ⇒ Boolean
(also: #account_networks_enabled?)
If true networks can be from different projects of the same vendor account.
-
#client_network ⇒ Google::Apis::BaremetalsolutionV2::NetworkAddress
A network.
-
#hyperthreading ⇒ Boolean
(also: #hyperthreading?)
Whether the instance should be provisioned with Hyperthreading enabled.
-
#id ⇒ String
A transient unique identifier to idenfity an instance within an ProvisioningConfig request.
-
#instance_type ⇒ String
Instance type.
-
#kms_key_version ⇒ String
Name of the KMS crypto key version used to encrypt the initial passwords.
-
#logical_interfaces ⇒ Array<Google::Apis::BaremetalsolutionV2::GoogleCloudBaremetalsolutionV2LogicalInterface>
List of logical interfaces for the instance.
-
#name ⇒ String
The name of the instance config.
-
#network_config ⇒ String
The type of network configuration on the instance.
-
#network_template ⇒ String
Server network template name.
-
#os_image ⇒ String
OS image to initialize the instance.
-
#private_network ⇒ Google::Apis::BaremetalsolutionV2::NetworkAddress
A network.
-
#ssh_key_names ⇒ Array<String>
Optional.
-
#user_note ⇒ String
User note field, it can be used by customers to add additional information for the BMS Ops team .
Instance Method Summary collapse
-
#initialize(**args) ⇒ InstanceConfig
constructor
A new instance of InstanceConfig.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ InstanceConfig
Returns a new instance of InstanceConfig.
554 555 556 |
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 554 def initialize(**args) update!(**args) end |
Instance Attribute Details
#account_networks_enabled ⇒ Boolean Also known as: account_networks_enabled?
If true networks can be from different projects of the same vendor account.
Corresponds to the JSON property accountNetworksEnabled
477 478 479 |
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 477 def account_networks_enabled @account_networks_enabled end |
#client_network ⇒ Google::Apis::BaremetalsolutionV2::NetworkAddress
A network.
Corresponds to the JSON property clientNetwork
483 484 485 |
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 483 def client_network @client_network end |
#hyperthreading ⇒ Boolean Also known as: hyperthreading?
Whether the instance should be provisioned with Hyperthreading enabled.
Corresponds to the JSON property hyperthreading
488 489 490 |
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 488 def hyperthreading @hyperthreading end |
#id ⇒ String
A transient unique identifier to idenfity an instance within an
ProvisioningConfig request.
Corresponds to the JSON property id
495 496 497 |
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 495 def id @id end |
#instance_type ⇒ String
Instance type. Available types
Corresponds to the JSON property instanceType
501 502 503 |
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 501 def instance_type @instance_type end |
#kms_key_version ⇒ String
Name of the KMS crypto key version used to encrypt the initial passwords. The
key has to have ASYMMETRIC_DECRYPT purpose.
Corresponds to the JSON property kmsKeyVersion
507 508 509 |
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 507 def kms_key_version @kms_key_version end |
#logical_interfaces ⇒ Array<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.
Filled if InstanceConfig.multivlan_config is true.
Corresponds to the JSON property logicalInterfaces
514 515 516 |
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 514 def logical_interfaces @logical_interfaces end |
#name ⇒ String
The name of the instance config.
Corresponds to the JSON property name
519 520 521 |
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 519 def name @name end |
#network_config ⇒ String
The type of network configuration on the instance.
Corresponds to the JSON property networkConfig
524 525 526 |
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 524 def network_config @network_config end |
#network_template ⇒ String
Server network template name. Filled if InstanceConfig.multivlan_config is
true.
Corresponds to the JSON property networkTemplate
530 531 532 |
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 530 def network_template @network_template end |
#os_image ⇒ String
OS image to initialize the instance. Available images
Corresponds to the JSON property osImage
536 537 538 |
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 536 def os_image @os_image end |
#private_network ⇒ Google::Apis::BaremetalsolutionV2::NetworkAddress
A network.
Corresponds to the JSON property privateNetwork
541 542 543 |
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 541 def private_network @private_network end |
#ssh_key_names ⇒ Array<String>
Optional. List of names of ssh keys used to provision the instance.
Corresponds to the JSON property sshKeyNames
546 547 548 |
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 546 def ssh_key_names @ssh_key_names end |
#user_note ⇒ String
User note field, it can be used by customers to add additional information for
the BMS Ops team .
Corresponds to the JSON property userNote
552 553 554 |
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 552 def user_note @user_note end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 |
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 559 def update!(**args) @account_networks_enabled = args[:account_networks_enabled] if args.key?(:account_networks_enabled) @client_network = args[:client_network] if args.key?(:client_network) @hyperthreading = args[:hyperthreading] if args.key?(:hyperthreading) @id = args[:id] if args.key?(:id) @instance_type = args[:instance_type] if args.key?(:instance_type) @kms_key_version = args[:kms_key_version] if args.key?(:kms_key_version) @logical_interfaces = args[:logical_interfaces] if args.key?(:logical_interfaces) @name = args[:name] if args.key?(:name) @network_config = args[:network_config] if args.key?(:network_config) @network_template = args[:network_template] if args.key?(:network_template) @os_image = args[:os_image] if args.key?(:os_image) @private_network = args[:private_network] if args.key?(:private_network) @ssh_key_names = args[:ssh_key_names] if args.key?(:ssh_key_names) @user_note = args[:user_note] if args.key?(:user_note) end |