Class: OCI::Core::Models::UpdateLaunchOptions
- Inherits:
-
Object
- Object
- OCI::Core::Models::UpdateLaunchOptions
- Defined in:
- lib/oci/core/models/update_launch_options.rb
Overview
Options for tuning the compatibility and performance of VM shapes.
Constant Summary collapse
- BOOT_VOLUME_TYPE_ENUM =
[ BOOT_VOLUME_TYPE_ISCSI = 'ISCSI'.freeze, BOOT_VOLUME_TYPE_PARAVIRTUALIZED = 'PARAVIRTUALIZED'.freeze ].freeze
- NETWORK_TYPE_ENUM =
[ NETWORK_TYPE_VFIO = 'VFIO'.freeze, NETWORK_TYPE_PARAVIRTUALIZED = 'PARAVIRTUALIZED'.freeze ].freeze
Instance Attribute Summary collapse
-
#boot_volume_type ⇒ String
Emulation type for the boot volume.
-
#is_pv_encryption_in_transit_enabled ⇒ BOOLEAN
Whether to enable in-transit encryption for the volume's paravirtualized attachment.
-
#network_type ⇒ String
Emulation type for the physical network interface card (NIC).
Class Method Summary collapse
-
.attribute_map ⇒ Object
Attribute mapping from ruby-style variable name to JSON key.
-
.swagger_types ⇒ Object
Attribute type mapping.
Instance Method Summary collapse
-
#==(other) ⇒ Object
Checks equality by comparing each attribute.
-
#build_from_hash(attributes) ⇒ Object
Builds the object from hash.
- #eql?(other) ⇒ Boolean
-
#hash ⇒ Fixnum
Calculates hash code according to all attributes.
-
#initialize(attributes = {}) ⇒ UpdateLaunchOptions
constructor
Initializes the object.
-
#to_hash ⇒ Hash
Returns the object in the form of hash.
-
#to_s ⇒ String
Returns the string representation of the object.
Constructor Details
#initialize(attributes = {}) ⇒ UpdateLaunchOptions
Initializes the object
105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 |
# File 'lib/oci/core/models/update_launch_options.rb', line 105 def initialize(attributes = {}) return unless attributes.is_a?(Hash) # convert string to symbol for hash key attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v } self.boot_volume_type = attributes[:'bootVolumeType'] if attributes[:'bootVolumeType'] raise 'You cannot provide both :bootVolumeType and :boot_volume_type' if attributes.key?(:'bootVolumeType') && attributes.key?(:'boot_volume_type') self.boot_volume_type = attributes[:'boot_volume_type'] if attributes[:'boot_volume_type'] self.network_type = attributes[:'networkType'] if attributes[:'networkType'] raise 'You cannot provide both :networkType and :network_type' if attributes.key?(:'networkType') && attributes.key?(:'network_type') self.network_type = attributes[:'network_type'] if attributes[:'network_type'] self.is_pv_encryption_in_transit_enabled = attributes[:'isPvEncryptionInTransitEnabled'] unless attributes[:'isPvEncryptionInTransitEnabled'].nil? raise 'You cannot provide both :isPvEncryptionInTransitEnabled and :is_pv_encryption_in_transit_enabled' if attributes.key?(:'isPvEncryptionInTransitEnabled') && attributes.key?(:'is_pv_encryption_in_transit_enabled') self.is_pv_encryption_in_transit_enabled = attributes[:'is_pv_encryption_in_transit_enabled'] unless attributes[:'is_pv_encryption_in_transit_enabled'].nil? end |
Instance Attribute Details
#boot_volume_type ⇒ String
Emulation type for the boot volume. * ISCSI
- ISCSI attached block storage device. * PARAVIRTUALIZED
- Paravirtualized disk. This is the default for boot volumes and remote block storage volumes on platform images.
Before you change the boot volume attachment type, detach all block volumes and VNICs except for the boot volume and the primary VNIC.
If the instance is running when you change the boot volume attachment type, it will be rebooted.
Note: Some instances might not function properly if you change the boot volume attachment type. After the instance reboots and is running, connect to it. If the connection fails or the OS doesn't behave as expected, the changes are not supported. Revert the instance to the original boot volume attachment type.
37 38 39 |
# File 'lib/oci/core/models/update_launch_options.rb', line 37 def boot_volume_type @boot_volume_type end |
#is_pv_encryption_in_transit_enabled ⇒ BOOLEAN
Whether to enable in-transit encryption for the volume's paravirtualized attachment. To enable in-transit encryption for block volumes and boot volumes, this field must be set to true
.
Data in transit is transferred over an internal and highly secure network. If you have specific compliance requirements related to the encryption of the data while it is moving between the instance and the boot volume or the block volume, you can enable in-transit encryption. In-transit encryption is not enabled by default.
All boot volumes and block volumes are encrypted at rest.
For more information, see Block Volume Encryption.
72 73 74 |
# File 'lib/oci/core/models/update_launch_options.rb', line 72 def is_pv_encryption_in_transit_enabled @is_pv_encryption_in_transit_enabled end |
#network_type ⇒ String
Emulation type for the physical network interface card (NIC). * VFIO
- Direct attached Virtual Function network controller. This is the networking type when you launch an instance using hardware-assisted (SR-IOV) networking. * PARAVIRTUALIZED
- VM instances launch with paravirtualized devices using VirtIO drivers.
Before you change the networking type, detach all VNICs and block volumes except for the primary VNIC and the boot volume.
The image must have paravirtualized drivers installed. For more information, see Editing an Instance.
If the instance is running when you change the network type, it will be rebooted.
Note: Some instances might not function properly if you change the networking type. After the instance reboots and is running, connect to it. If the connection fails or the OS doesn't behave as expected, the changes are not supported. Revert the instance to the original networking type.
57 58 59 |
# File 'lib/oci/core/models/update_launch_options.rb', line 57 def network_type @network_type end |
Class Method Details
.attribute_map ⇒ Object
Attribute mapping from ruby-style variable name to JSON key.
75 76 77 78 79 80 81 82 83 |
# File 'lib/oci/core/models/update_launch_options.rb', line 75 def self.attribute_map { # rubocop:disable Style/SymbolLiteral 'boot_volume_type': :'bootVolumeType', 'network_type': :'networkType', 'is_pv_encryption_in_transit_enabled': :'isPvEncryptionInTransitEnabled' # rubocop:enable Style/SymbolLiteral } end |
.swagger_types ⇒ Object
Attribute type mapping.
86 87 88 89 90 91 92 93 94 |
# File 'lib/oci/core/models/update_launch_options.rb', line 86 def self.swagger_types { # rubocop:disable Style/SymbolLiteral 'boot_volume_type': :'String', 'network_type': :'String', 'is_pv_encryption_in_transit_enabled': :'BOOLEAN' # rubocop:enable Style/SymbolLiteral } end |
Instance Method Details
#==(other) ⇒ Object
Checks equality by comparing each attribute.
153 154 155 156 157 158 159 160 |
# File 'lib/oci/core/models/update_launch_options.rb', line 153 def ==(other) return true if equal?(other) self.class == other.class && boot_volume_type == other.boot_volume_type && network_type == other.network_type && is_pv_encryption_in_transit_enabled == other.is_pv_encryption_in_transit_enabled end |
#build_from_hash(attributes) ⇒ Object
Builds the object from hash
185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 |
# File 'lib/oci/core/models/update_launch_options.rb', line 185 def build_from_hash(attributes) return nil unless attributes.is_a?(Hash) self.class.swagger_types.each_pair do |key, type| if type =~ /^Array<(.*)>/i # check to ensure the input is an array given that the the attribute # is documented as an array but the input is not if attributes[self.class.attribute_map[key]].is_a?(Array) public_method("#{key}=").call( attributes[self.class.attribute_map[key]] .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) } ) end elsif !attributes[self.class.attribute_map[key]].nil? public_method("#{key}=").call( OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]) ) end # or else data not found in attributes(hash), not an issue as the data can be optional end self end |
#eql?(other) ⇒ Boolean
165 166 167 |
# File 'lib/oci/core/models/update_launch_options.rb', line 165 def eql?(other) self == other end |
#hash ⇒ Fixnum
Calculates hash code according to all attributes.
174 175 176 |
# File 'lib/oci/core/models/update_launch_options.rb', line 174 def hash [boot_volume_type, network_type, is_pv_encryption_in_transit_enabled].hash end |
#to_hash ⇒ Hash
Returns the object in the form of hash
218 219 220 221 222 223 224 225 226 227 |
# File 'lib/oci/core/models/update_launch_options.rb', line 218 def to_hash hash = {} self.class.attribute_map.each_pair do |attr, param| value = public_method(attr).call next if value.nil? && !instance_variable_defined?("@#{attr}") hash[param] = _to_hash(value) end hash end |
#to_s ⇒ String
Returns the string representation of the object
212 213 214 |
# File 'lib/oci/core/models/update_launch_options.rb', line 212 def to_s to_hash.to_s end |