oci 2.3.6 → 2.3.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +11 -10
- data/lib/oci.rb +1 -0
- data/lib/oci/api_client.rb +2 -2
- data/lib/oci/audit/audit_client.rb +11 -9
- data/lib/oci/base_signer.rb +13 -13
- data/lib/oci/container_engine/container_engine_client.rb +43 -39
- data/lib/oci/container_engine/models/node_error.rb +1 -1
- data/lib/oci/container_engine/models/work_request_error.rb +1 -1
- data/lib/oci/core/blockstorage_client.rb +421 -75
- data/lib/oci/core/compute_client.rb +77 -75
- data/lib/oci/core/compute_client_composite_operations.rb +40 -0
- data/lib/oci/core/core.rb +4 -0
- data/lib/oci/core/models/boot_volume.rb +18 -4
- data/lib/oci/core/models/boot_volume_kms_key.rb +152 -0
- data/lib/oci/core/models/create_boot_volume_details.rb +15 -1
- data/lib/oci/core/models/create_image_details.rb +2 -0
- data/lib/oci/core/models/create_volume_details.rb +15 -1
- data/lib/oci/core/models/fast_connect_provider_service.rb +1 -1
- data/lib/oci/core/models/image.rb +2 -0
- data/lib/oci/core/models/instance.rb +2 -0
- data/lib/oci/core/models/instance_source_via_image_details.rb +18 -4
- data/lib/oci/core/models/launch_options.rb +2 -0
- data/lib/oci/core/models/update_boot_volume_kms_key_details.rb +154 -0
- data/lib/oci/core/models/update_volume_kms_key_details.rb +154 -0
- data/lib/oci/core/models/volume.rb +15 -1
- data/lib/oci/core/models/volume_kms_key.rb +152 -0
- data/lib/oci/core/virtual_network_client.rb +233 -231
- data/lib/oci/core/virtual_network_client_composite_operations.rb +80 -0
- data/lib/oci/database/database_client.rb +123 -121
- data/lib/oci/database/database_client_composite_operations.rb +399 -0
- data/lib/oci/database/models/patch.rb +1 -1
- data/lib/oci/database/models/patch_summary.rb +1 -1
- data/lib/oci/dns/dns_client.rb +38 -36
- data/lib/oci/email/email_client.rb +21 -19
- data/lib/oci/email/models/sender.rb +1 -1
- data/lib/oci/email/models/suppression.rb +1 -1
- data/lib/oci/file_storage/file_storage_client.rb +49 -47
- data/lib/oci/identity/identity_client.rb +151 -149
- data/lib/oci/identity/identity_client_composite_operations.rb +40 -0
- data/lib/oci/key_management/key_management.rb +40 -0
- data/lib/oci/key_management/kms_crypto_client.rb +258 -0
- data/lib/oci/key_management/kms_crypto_client_composite_operations.rb +24 -0
- data/lib/oci/key_management/kms_management_client.rb +716 -0
- data/lib/oci/key_management/kms_management_client_composite_operations.rb +181 -0
- data/lib/oci/key_management/kms_vault_client.rb +533 -0
- data/lib/oci/key_management/kms_vault_client_composite_operations.rb +182 -0
- data/lib/oci/key_management/models/create_key_details.rb +180 -0
- data/lib/oci/key_management/models/create_vault_details.rb +194 -0
- data/lib/oci/key_management/models/decrypt_data_details.rb +177 -0
- data/lib/oci/key_management/models/decrypted_data.rb +160 -0
- data/lib/oci/key_management/models/encrypt_data_details.rb +177 -0
- data/lib/oci/key_management/models/encrypted_data.rb +146 -0
- data/lib/oci/key_management/models/generate_key_details.rb +195 -0
- data/lib/oci/key_management/models/generated_key.rb +177 -0
- data/lib/oci/key_management/models/key.rb +318 -0
- data/lib/oci/key_management/models/key_shape.rb +178 -0
- data/lib/oci/key_management/models/key_summary.rb +287 -0
- data/lib/oci/key_management/models/key_version.rb +205 -0
- data/lib/oci/key_management/models/key_version_summary.rb +205 -0
- data/lib/oci/key_management/models/schedule_vault_deletion_details.rb +153 -0
- data/lib/oci/key_management/models/update_key_details.rb +152 -0
- data/lib/oci/key_management/models/update_vault_details.rb +152 -0
- data/lib/oci/key_management/models/vault.rb +350 -0
- data/lib/oci/key_management/models/vault_summary.rb +334 -0
- data/lib/oci/key_management/util.rb +2 -0
- data/lib/oci/load_balancer/load_balancer_client.rb +89 -87
- data/lib/oci/object_storage/models/bucket.rb +18 -4
- data/lib/oci/object_storage/models/create_bucket_details.rb +18 -4
- data/lib/oci/object_storage/models/multipart_upload.rb +1 -1
- data/lib/oci/object_storage/models/preauthenticated_request.rb +1 -1
- data/lib/oci/object_storage/models/update_bucket_details.rb +22 -4
- data/lib/oci/object_storage/object_storage_client.rb +63 -58
- data/lib/oci/resource_search/resource_search_client.rb +11 -9
- data/lib/oci/version.rb +1 -1
- metadata +32 -2
@@ -100,6 +100,10 @@ module OCI
|
|
100
100
|
# @return [String]
|
101
101
|
attr_accessor :volume_group_id
|
102
102
|
|
103
|
+
# The OCID of the KMS key which is the master encryption key for the boot volume.
|
104
|
+
# @return [String]
|
105
|
+
attr_accessor :kms_key_id
|
106
|
+
|
103
107
|
# Attribute mapping from ruby-style variable name to JSON key.
|
104
108
|
def self.attribute_map
|
105
109
|
{
|
@@ -117,7 +121,8 @@ module OCI
|
|
117
121
|
'size_in_mbs': :'sizeInMBs',
|
118
122
|
'source_details': :'sourceDetails',
|
119
123
|
'time_created': :'timeCreated',
|
120
|
-
'volume_group_id': :'volumeGroupId'
|
124
|
+
'volume_group_id': :'volumeGroupId',
|
125
|
+
'kms_key_id': :'kmsKeyId'
|
121
126
|
# rubocop:enable Style/SymbolLiteral
|
122
127
|
}
|
123
128
|
end
|
@@ -139,7 +144,8 @@ module OCI
|
|
139
144
|
'size_in_mbs': :'Integer',
|
140
145
|
'source_details': :'OCI::Core::Models::BootVolumeSourceDetails',
|
141
146
|
'time_created': :'DateTime',
|
142
|
-
'volume_group_id': :'String'
|
147
|
+
'volume_group_id': :'String',
|
148
|
+
'kms_key_id': :'String'
|
143
149
|
# rubocop:enable Style/SymbolLiteral
|
144
150
|
}
|
145
151
|
end
|
@@ -164,6 +170,7 @@ module OCI
|
|
164
170
|
# @option attributes [OCI::Core::Models::BootVolumeSourceDetails] :source_details The value to assign to the {#source_details} property
|
165
171
|
# @option attributes [DateTime] :time_created The value to assign to the {#time_created} property
|
166
172
|
# @option attributes [String] :volume_group_id The value to assign to the {#volume_group_id} property
|
173
|
+
# @option attributes [String] :kms_key_id The value to assign to the {#kms_key_id} property
|
167
174
|
def initialize(attributes = {})
|
168
175
|
return unless attributes.is_a?(Hash)
|
169
176
|
|
@@ -249,6 +256,12 @@ module OCI
|
|
249
256
|
raise 'You cannot provide both :volumeGroupId and :volume_group_id' if attributes.key?(:'volumeGroupId') && attributes.key?(:'volume_group_id')
|
250
257
|
|
251
258
|
self.volume_group_id = attributes[:'volume_group_id'] if attributes[:'volume_group_id']
|
259
|
+
|
260
|
+
self.kms_key_id = attributes[:'kmsKeyId'] if attributes[:'kmsKeyId']
|
261
|
+
|
262
|
+
raise 'You cannot provide both :kmsKeyId and :kms_key_id' if attributes.key?(:'kmsKeyId') && attributes.key?(:'kms_key_id')
|
263
|
+
|
264
|
+
self.kms_key_id = attributes[:'kms_key_id'] if attributes[:'kms_key_id']
|
252
265
|
end
|
253
266
|
# rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
|
254
267
|
# rubocop:enable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
|
@@ -289,7 +302,8 @@ module OCI
|
|
289
302
|
size_in_mbs == other.size_in_mbs &&
|
290
303
|
source_details == other.source_details &&
|
291
304
|
time_created == other.time_created &&
|
292
|
-
volume_group_id == other.volume_group_id
|
305
|
+
volume_group_id == other.volume_group_id &&
|
306
|
+
kms_key_id == other.kms_key_id
|
293
307
|
end
|
294
308
|
# rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
|
295
309
|
|
@@ -305,7 +319,7 @@ module OCI
|
|
305
319
|
# Calculates hash code according to all attributes.
|
306
320
|
# @return [Fixnum] Hash code
|
307
321
|
def hash
|
308
|
-
[availability_domain, compartment_id, defined_tags, display_name, freeform_tags, id, image_id, is_hydrated, lifecycle_state, size_in_gbs, size_in_mbs, source_details, time_created, volume_group_id].hash
|
322
|
+
[availability_domain, compartment_id, defined_tags, display_name, freeform_tags, id, image_id, is_hydrated, lifecycle_state, size_in_gbs, size_in_mbs, source_details, time_created, volume_group_id, kms_key_id].hash
|
309
323
|
end
|
310
324
|
# rubocop:enable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
|
311
325
|
|
@@ -0,0 +1,152 @@
|
|
1
|
+
# Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
|
2
|
+
|
3
|
+
require 'date'
|
4
|
+
|
5
|
+
# rubocop:disable Lint/UnneededCopDisableDirective
|
6
|
+
module OCI
|
7
|
+
# Kms key id associated with this volume.
|
8
|
+
#
|
9
|
+
class Core::Models::BootVolumeKmsKey # rubocop:disable Metrics/LineLength
|
10
|
+
# Kms key id associated with this volume. If volume is not using KMS, then kmsKeyId will be null string.
|
11
|
+
#
|
12
|
+
# @return [String]
|
13
|
+
attr_accessor :kms_key_id
|
14
|
+
|
15
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
16
|
+
def self.attribute_map
|
17
|
+
{
|
18
|
+
# rubocop:disable Style/SymbolLiteral
|
19
|
+
'kms_key_id': :'kmsKeyId'
|
20
|
+
# rubocop:enable Style/SymbolLiteral
|
21
|
+
}
|
22
|
+
end
|
23
|
+
|
24
|
+
# Attribute type mapping.
|
25
|
+
def self.swagger_types
|
26
|
+
{
|
27
|
+
# rubocop:disable Style/SymbolLiteral
|
28
|
+
'kms_key_id': :'String'
|
29
|
+
# rubocop:enable Style/SymbolLiteral
|
30
|
+
}
|
31
|
+
end
|
32
|
+
|
33
|
+
# rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
|
34
|
+
# rubocop:disable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
|
35
|
+
|
36
|
+
|
37
|
+
# Initializes the object
|
38
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
39
|
+
# @option attributes [String] :kms_key_id The value to assign to the {#kms_key_id} property
|
40
|
+
def initialize(attributes = {})
|
41
|
+
return unless attributes.is_a?(Hash)
|
42
|
+
|
43
|
+
# convert string to symbol for hash key
|
44
|
+
attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
|
45
|
+
|
46
|
+
self.kms_key_id = attributes[:'kmsKeyId'] if attributes[:'kmsKeyId']
|
47
|
+
|
48
|
+
raise 'You cannot provide both :kmsKeyId and :kms_key_id' if attributes.key?(:'kmsKeyId') && attributes.key?(:'kms_key_id')
|
49
|
+
|
50
|
+
self.kms_key_id = attributes[:'kms_key_id'] if attributes[:'kms_key_id']
|
51
|
+
end
|
52
|
+
# rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
|
53
|
+
# rubocop:enable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
|
54
|
+
|
55
|
+
# rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
|
56
|
+
|
57
|
+
|
58
|
+
# Checks equality by comparing each attribute.
|
59
|
+
# @param [Object] other the other object to be compared
|
60
|
+
def ==(other)
|
61
|
+
return true if equal?(other)
|
62
|
+
self.class == other.class &&
|
63
|
+
kms_key_id == other.kms_key_id
|
64
|
+
end
|
65
|
+
# rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
|
66
|
+
|
67
|
+
# @see the `==` method
|
68
|
+
# @param [Object] other the other object to be compared
|
69
|
+
def eql?(other)
|
70
|
+
self == other
|
71
|
+
end
|
72
|
+
|
73
|
+
# rubocop:disable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
|
74
|
+
|
75
|
+
|
76
|
+
# Calculates hash code according to all attributes.
|
77
|
+
# @return [Fixnum] Hash code
|
78
|
+
def hash
|
79
|
+
[kms_key_id].hash
|
80
|
+
end
|
81
|
+
# rubocop:enable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
|
82
|
+
|
83
|
+
# rubocop:disable Metrics/AbcSize, Layout/EmptyLines
|
84
|
+
|
85
|
+
|
86
|
+
# Builds the object from hash
|
87
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
88
|
+
# @return [Object] Returns the model itself
|
89
|
+
def build_from_hash(attributes)
|
90
|
+
return nil unless attributes.is_a?(Hash)
|
91
|
+
self.class.swagger_types.each_pair do |key, type|
|
92
|
+
if type =~ /^Array<(.*)>/i
|
93
|
+
# check to ensure the input is an array given that the the attribute
|
94
|
+
# is documented as an array but the input is not
|
95
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
96
|
+
public_method("#{key}=").call(
|
97
|
+
attributes[self.class.attribute_map[key]]
|
98
|
+
.map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
|
99
|
+
)
|
100
|
+
end
|
101
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
102
|
+
public_method("#{key}=").call(
|
103
|
+
OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
|
104
|
+
)
|
105
|
+
end
|
106
|
+
# or else data not found in attributes(hash), not an issue as the data can be optional
|
107
|
+
end
|
108
|
+
|
109
|
+
self
|
110
|
+
end
|
111
|
+
# rubocop:enable Metrics/AbcSize, Layout/EmptyLines
|
112
|
+
|
113
|
+
# Returns the string representation of the object
|
114
|
+
# @return [String] String presentation of the object
|
115
|
+
def to_s
|
116
|
+
to_hash.to_s
|
117
|
+
end
|
118
|
+
|
119
|
+
# Returns the object in the form of hash
|
120
|
+
# @return [Hash] Returns the object in the form of hash
|
121
|
+
def to_hash
|
122
|
+
hash = {}
|
123
|
+
self.class.attribute_map.each_pair do |attr, param|
|
124
|
+
value = public_method(attr).call
|
125
|
+
next if value.nil? && !instance_variable_defined?("@#{attr}")
|
126
|
+
hash[param] = _to_hash(value)
|
127
|
+
end
|
128
|
+
hash
|
129
|
+
end
|
130
|
+
|
131
|
+
private
|
132
|
+
|
133
|
+
# Outputs non-array value in the form of hash
|
134
|
+
# For object, use to_hash. Otherwise, just return the value
|
135
|
+
# @param [Object] value Any valid value
|
136
|
+
# @return [Hash] Returns the value in the form of hash
|
137
|
+
def _to_hash(value)
|
138
|
+
if value.is_a?(Array)
|
139
|
+
value.compact.map { |v| _to_hash(v) }
|
140
|
+
elsif value.is_a?(Hash)
|
141
|
+
{}.tap do |hash|
|
142
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
143
|
+
end
|
144
|
+
elsif value.respond_to? :to_hash
|
145
|
+
value.to_hash
|
146
|
+
else
|
147
|
+
value
|
148
|
+
end
|
149
|
+
end
|
150
|
+
end
|
151
|
+
end
|
152
|
+
# rubocop:enable Lint/UnneededCopDisableDirective
|
@@ -46,6 +46,10 @@ module OCI
|
|
46
46
|
# @return [Hash<String, String>]
|
47
47
|
attr_accessor :freeform_tags
|
48
48
|
|
49
|
+
# The OCID of the KMS key to be used as the master encryption key for the boot volume.
|
50
|
+
# @return [String]
|
51
|
+
attr_accessor :kms_key_id
|
52
|
+
|
49
53
|
# The size of the volume in GBs.
|
50
54
|
# @return [Integer]
|
51
55
|
attr_accessor :size_in_gbs
|
@@ -66,6 +70,7 @@ module OCI
|
|
66
70
|
'defined_tags': :'definedTags',
|
67
71
|
'display_name': :'displayName',
|
68
72
|
'freeform_tags': :'freeformTags',
|
73
|
+
'kms_key_id': :'kmsKeyId',
|
69
74
|
'size_in_gbs': :'sizeInGBs',
|
70
75
|
'source_details': :'sourceDetails'
|
71
76
|
# rubocop:enable Style/SymbolLiteral
|
@@ -82,6 +87,7 @@ module OCI
|
|
82
87
|
'defined_tags': :'Hash<String, Hash<String, Object>>',
|
83
88
|
'display_name': :'String',
|
84
89
|
'freeform_tags': :'Hash<String, String>',
|
90
|
+
'kms_key_id': :'String',
|
85
91
|
'size_in_gbs': :'Integer',
|
86
92
|
'source_details': :'OCI::Core::Models::BootVolumeSourceDetails'
|
87
93
|
# rubocop:enable Style/SymbolLiteral
|
@@ -100,6 +106,7 @@ module OCI
|
|
100
106
|
# @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {#defined_tags} property
|
101
107
|
# @option attributes [String] :display_name The value to assign to the {#display_name} property
|
102
108
|
# @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
|
109
|
+
# @option attributes [String] :kms_key_id The value to assign to the {#kms_key_id} property
|
103
110
|
# @option attributes [Integer] :size_in_gbs The value to assign to the {#size_in_gbs} property
|
104
111
|
# @option attributes [OCI::Core::Models::BootVolumeSourceDetails] :source_details The value to assign to the {#source_details} property
|
105
112
|
def initialize(attributes = {})
|
@@ -144,6 +151,12 @@ module OCI
|
|
144
151
|
|
145
152
|
self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']
|
146
153
|
|
154
|
+
self.kms_key_id = attributes[:'kmsKeyId'] if attributes[:'kmsKeyId']
|
155
|
+
|
156
|
+
raise 'You cannot provide both :kmsKeyId and :kms_key_id' if attributes.key?(:'kmsKeyId') && attributes.key?(:'kms_key_id')
|
157
|
+
|
158
|
+
self.kms_key_id = attributes[:'kms_key_id'] if attributes[:'kms_key_id']
|
159
|
+
|
147
160
|
self.size_in_gbs = attributes[:'sizeInGBs'] if attributes[:'sizeInGBs']
|
148
161
|
|
149
162
|
raise 'You cannot provide both :sizeInGBs and :size_in_gbs' if attributes.key?(:'sizeInGBs') && attributes.key?(:'size_in_gbs')
|
@@ -173,6 +186,7 @@ module OCI
|
|
173
186
|
defined_tags == other.defined_tags &&
|
174
187
|
display_name == other.display_name &&
|
175
188
|
freeform_tags == other.freeform_tags &&
|
189
|
+
kms_key_id == other.kms_key_id &&
|
176
190
|
size_in_gbs == other.size_in_gbs &&
|
177
191
|
source_details == other.source_details
|
178
192
|
end
|
@@ -190,7 +204,7 @@ module OCI
|
|
190
204
|
# Calculates hash code according to all attributes.
|
191
205
|
# @return [Fixnum] Hash code
|
192
206
|
def hash
|
193
|
-
[availability_domain, backup_policy_id, compartment_id, defined_tags, display_name, freeform_tags, size_in_gbs, source_details].hash
|
207
|
+
[availability_domain, backup_policy_id, compartment_id, defined_tags, display_name, freeform_tags, kms_key_id, size_in_gbs, source_details].hash
|
194
208
|
end
|
195
209
|
# rubocop:enable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
|
196
210
|
|
@@ -9,6 +9,7 @@ module OCI
|
|
9
9
|
LAUNCH_MODE_ENUM = [
|
10
10
|
LAUNCH_MODE_NATIVE = 'NATIVE'.freeze,
|
11
11
|
LAUNCH_MODE_EMULATED = 'EMULATED'.freeze,
|
12
|
+
LAUNCH_MODE_PARAVIRTUALIZED = 'PARAVIRTUALIZED'.freeze,
|
12
13
|
LAUNCH_MODE_CUSTOM = 'CUSTOM'.freeze
|
13
14
|
].freeze
|
14
15
|
|
@@ -54,6 +55,7 @@ module OCI
|
|
54
55
|
# Specifies the configuration mode for launching virtual machine (VM) instances. The configuration modes are:
|
55
56
|
# * `NATIVE` - VM instances launch with iSCSI boot and VFIO devices. The default value for Oracle-provided images.
|
56
57
|
# * `EMULATED` - VM instances launch with emulated devices, such as the E1000 network driver and emulated SCSI disk controller.
|
58
|
+
# * `PARAVIRTUALIZED` - VM instances launch with paravirtualized devices using virtio drivers.
|
57
59
|
# * `CUSTOM` - VM instances launch with custom configuration settings specified in the `LaunchOptions` parameter.
|
58
60
|
#
|
59
61
|
# @return [String]
|
@@ -46,6 +46,10 @@ module OCI
|
|
46
46
|
# @return [Hash<String, String>]
|
47
47
|
attr_accessor :freeform_tags
|
48
48
|
|
49
|
+
# The OCID of the KMS key to be used as the master encryption key for the volume.
|
50
|
+
# @return [String]
|
51
|
+
attr_accessor :kms_key_id
|
52
|
+
|
49
53
|
# The size of the volume in GBs.
|
50
54
|
# @return [Integer]
|
51
55
|
attr_accessor :size_in_gbs
|
@@ -80,6 +84,7 @@ module OCI
|
|
80
84
|
'defined_tags': :'definedTags',
|
81
85
|
'display_name': :'displayName',
|
82
86
|
'freeform_tags': :'freeformTags',
|
87
|
+
'kms_key_id': :'kmsKeyId',
|
83
88
|
'size_in_gbs': :'sizeInGBs',
|
84
89
|
'size_in_mbs': :'sizeInMBs',
|
85
90
|
'source_details': :'sourceDetails',
|
@@ -98,6 +103,7 @@ module OCI
|
|
98
103
|
'defined_tags': :'Hash<String, Hash<String, Object>>',
|
99
104
|
'display_name': :'String',
|
100
105
|
'freeform_tags': :'Hash<String, String>',
|
106
|
+
'kms_key_id': :'String',
|
101
107
|
'size_in_gbs': :'Integer',
|
102
108
|
'size_in_mbs': :'Integer',
|
103
109
|
'source_details': :'OCI::Core::Models::VolumeSourceDetails',
|
@@ -118,6 +124,7 @@ module OCI
|
|
118
124
|
# @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {#defined_tags} property
|
119
125
|
# @option attributes [String] :display_name The value to assign to the {#display_name} property
|
120
126
|
# @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
|
127
|
+
# @option attributes [String] :kms_key_id The value to assign to the {#kms_key_id} property
|
121
128
|
# @option attributes [Integer] :size_in_gbs The value to assign to the {#size_in_gbs} property
|
122
129
|
# @option attributes [Integer] :size_in_mbs The value to assign to the {#size_in_mbs} property
|
123
130
|
# @option attributes [OCI::Core::Models::VolumeSourceDetails] :source_details The value to assign to the {#source_details} property
|
@@ -164,6 +171,12 @@ module OCI
|
|
164
171
|
|
165
172
|
self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']
|
166
173
|
|
174
|
+
self.kms_key_id = attributes[:'kmsKeyId'] if attributes[:'kmsKeyId']
|
175
|
+
|
176
|
+
raise 'You cannot provide both :kmsKeyId and :kms_key_id' if attributes.key?(:'kmsKeyId') && attributes.key?(:'kms_key_id')
|
177
|
+
|
178
|
+
self.kms_key_id = attributes[:'kms_key_id'] if attributes[:'kms_key_id']
|
179
|
+
|
167
180
|
self.size_in_gbs = attributes[:'sizeInGBs'] if attributes[:'sizeInGBs']
|
168
181
|
|
169
182
|
raise 'You cannot provide both :sizeInGBs and :size_in_gbs' if attributes.key?(:'sizeInGBs') && attributes.key?(:'size_in_gbs')
|
@@ -205,6 +218,7 @@ module OCI
|
|
205
218
|
defined_tags == other.defined_tags &&
|
206
219
|
display_name == other.display_name &&
|
207
220
|
freeform_tags == other.freeform_tags &&
|
221
|
+
kms_key_id == other.kms_key_id &&
|
208
222
|
size_in_gbs == other.size_in_gbs &&
|
209
223
|
size_in_mbs == other.size_in_mbs &&
|
210
224
|
source_details == other.source_details &&
|
@@ -224,7 +238,7 @@ module OCI
|
|
224
238
|
# Calculates hash code according to all attributes.
|
225
239
|
# @return [Fixnum] Hash code
|
226
240
|
def hash
|
227
|
-
[availability_domain, backup_policy_id, compartment_id, defined_tags, display_name, freeform_tags, size_in_gbs, size_in_mbs, source_details, volume_backup_id].hash
|
241
|
+
[availability_domain, backup_policy_id, compartment_id, defined_tags, display_name, freeform_tags, kms_key_id, size_in_gbs, size_in_mbs, source_details, volume_backup_id].hash
|
228
242
|
end
|
229
243
|
# rubocop:enable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
|
230
244
|
|
@@ -19,6 +19,7 @@ module OCI
|
|
19
19
|
LAUNCH_MODE_ENUM = [
|
20
20
|
LAUNCH_MODE_NATIVE = 'NATIVE'.freeze,
|
21
21
|
LAUNCH_MODE_EMULATED = 'EMULATED'.freeze,
|
22
|
+
LAUNCH_MODE_PARAVIRTUALIZED = 'PARAVIRTUALIZED'.freeze,
|
22
23
|
LAUNCH_MODE_CUSTOM = 'CUSTOM'.freeze,
|
23
24
|
LAUNCH_MODE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
|
24
25
|
].freeze
|
@@ -82,6 +83,7 @@ module OCI
|
|
82
83
|
# Specifies the configuration mode for launching virtual machine (VM) instances. The configuration modes are:
|
83
84
|
# * `NATIVE` - VM instances launch with iSCSI boot and VFIO devices. The default value for Oracle-provided images.
|
84
85
|
# * `EMULATED` - VM instances launch with emulated devices, such as the E1000 network driver and emulated SCSI disk controller.
|
86
|
+
# * `PARAVIRTUALIZED` - VM instances launch with paravirtualized devices using virtio drivers.
|
85
87
|
# * `CUSTOM` - VM instances launch with custom configuration settings specified in the `LaunchOptions` parameter.
|
86
88
|
#
|
87
89
|
# @return [String]
|
@@ -21,6 +21,7 @@ module OCI
|
|
21
21
|
LAUNCH_MODE_ENUM = [
|
22
22
|
LAUNCH_MODE_NATIVE = 'NATIVE'.freeze,
|
23
23
|
LAUNCH_MODE_EMULATED = 'EMULATED'.freeze,
|
24
|
+
LAUNCH_MODE_PARAVIRTUALIZED = 'PARAVIRTUALIZED'.freeze,
|
24
25
|
LAUNCH_MODE_CUSTOM = 'CUSTOM'.freeze,
|
25
26
|
LAUNCH_MODE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze
|
26
27
|
].freeze
|
@@ -134,6 +135,7 @@ module OCI
|
|
134
135
|
# Specifies the configuration mode for launching virtual machine (VM) instances. The configuration modes are:
|
135
136
|
# * `NATIVE` - VM instances launch with iSCSI boot and VFIO devices. The default value for Oracle-provided images.
|
136
137
|
# * `EMULATED` - VM instances launch with emulated devices, such as the E1000 network driver and emulated SCSI disk controller.
|
138
|
+
# * `PARAVIRTUALIZED` - VM instances launch with paravirtualized devices using virtio drivers.
|
137
139
|
# * `CUSTOM` - VM instances launch with custom configuration settings specified in the `LaunchOptions` parameter.
|
138
140
|
#
|
139
141
|
# @return [String]
|
@@ -15,13 +15,18 @@ module OCI
|
|
15
15
|
# @return [String]
|
16
16
|
attr_accessor :image_id
|
17
17
|
|
18
|
+
# The OCID of the KMS key to be used as the master encryption key for the boot volume.
|
19
|
+
# @return [String]
|
20
|
+
attr_accessor :kms_key_id
|
21
|
+
|
18
22
|
# Attribute mapping from ruby-style variable name to JSON key.
|
19
23
|
def self.attribute_map
|
20
24
|
{
|
21
25
|
# rubocop:disable Style/SymbolLiteral
|
22
26
|
'source_type': :'sourceType',
|
23
27
|
'boot_volume_size_in_gbs': :'bootVolumeSizeInGBs',
|
24
|
-
'image_id': :'imageId'
|
28
|
+
'image_id': :'imageId',
|
29
|
+
'kms_key_id': :'kmsKeyId'
|
25
30
|
# rubocop:enable Style/SymbolLiteral
|
26
31
|
}
|
27
32
|
end
|
@@ -32,7 +37,8 @@ module OCI
|
|
32
37
|
# rubocop:disable Style/SymbolLiteral
|
33
38
|
'source_type': :'String',
|
34
39
|
'boot_volume_size_in_gbs': :'Integer',
|
35
|
-
'image_id': :'String'
|
40
|
+
'image_id': :'String',
|
41
|
+
'kms_key_id': :'String'
|
36
42
|
# rubocop:enable Style/SymbolLiteral
|
37
43
|
}
|
38
44
|
end
|
@@ -45,6 +51,7 @@ module OCI
|
|
45
51
|
# @param [Hash] attributes Model attributes in the form of hash
|
46
52
|
# @option attributes [Integer] :boot_volume_size_in_gbs The value to assign to the {#boot_volume_size_in_gbs} property
|
47
53
|
# @option attributes [String] :image_id The value to assign to the {#image_id} property
|
54
|
+
# @option attributes [String] :kms_key_id The value to assign to the {#kms_key_id} property
|
48
55
|
def initialize(attributes = {})
|
49
56
|
return unless attributes.is_a?(Hash)
|
50
57
|
|
@@ -66,6 +73,12 @@ module OCI
|
|
66
73
|
raise 'You cannot provide both :imageId and :image_id' if attributes.key?(:'imageId') && attributes.key?(:'image_id')
|
67
74
|
|
68
75
|
self.image_id = attributes[:'image_id'] if attributes[:'image_id']
|
76
|
+
|
77
|
+
self.kms_key_id = attributes[:'kmsKeyId'] if attributes[:'kmsKeyId']
|
78
|
+
|
79
|
+
raise 'You cannot provide both :kmsKeyId and :kms_key_id' if attributes.key?(:'kmsKeyId') && attributes.key?(:'kms_key_id')
|
80
|
+
|
81
|
+
self.kms_key_id = attributes[:'kms_key_id'] if attributes[:'kms_key_id']
|
69
82
|
end
|
70
83
|
# rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
|
71
84
|
# rubocop:enable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
|
@@ -80,7 +93,8 @@ module OCI
|
|
80
93
|
self.class == other.class &&
|
81
94
|
source_type == other.source_type &&
|
82
95
|
boot_volume_size_in_gbs == other.boot_volume_size_in_gbs &&
|
83
|
-
image_id == other.image_id
|
96
|
+
image_id == other.image_id &&
|
97
|
+
kms_key_id == other.kms_key_id
|
84
98
|
end
|
85
99
|
# rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
|
86
100
|
|
@@ -96,7 +110,7 @@ module OCI
|
|
96
110
|
# Calculates hash code according to all attributes.
|
97
111
|
# @return [Fixnum] Hash code
|
98
112
|
def hash
|
99
|
-
[source_type, boot_volume_size_in_gbs, image_id].hash
|
113
|
+
[source_type, boot_volume_size_in_gbs, image_id, kms_key_id].hash
|
100
114
|
end
|
101
115
|
# rubocop:enable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
|
102
116
|
|