akeyless 3.5.1 → 3.5.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (35) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -1
  3. data/docs/ActiveDirectoryPayload.md +5 -1
  4. data/docs/CertificateTemplateInfo.md +2 -0
  5. data/docs/CreateClassicKey.md +2 -0
  6. data/docs/CreateDFCKey.md +2 -0
  7. data/docs/CreateKey.md +2 -0
  8. data/docs/CreateRotatedSecret.md +4 -0
  9. data/docs/DSProducerDetails.md +2 -0
  10. data/docs/GatewayCreateMigration.md +5 -1
  11. data/docs/GatewayUpdateItem.md +4 -0
  12. data/docs/GatewayUpdateMigration.md +5 -1
  13. data/docs/GcpTargetDetails.md +3 -1
  14. data/docs/GenerateCsr.md +4 -0
  15. data/docs/UpdateClassicKeyCertificate.md +26 -0
  16. data/docs/V2Api.md +64 -1
  17. data/lib/akeyless/api/v2_api.rb +64 -0
  18. data/lib/akeyless/api_client.rb +10 -8
  19. data/lib/akeyless/models/active_directory_payload.rb +22 -1
  20. data/lib/akeyless/models/certificate_template_info.rb +10 -1
  21. data/lib/akeyless/models/create_classic_key.rb +11 -1
  22. data/lib/akeyless/models/create_dfc_key.rb +11 -1
  23. data/lib/akeyless/models/create_key.rb +11 -1
  24. data/lib/akeyless/models/create_rotated_secret.rb +21 -1
  25. data/lib/akeyless/models/ds_producer_details.rb +10 -1
  26. data/lib/akeyless/models/gateway_create_migration.rb +24 -2
  27. data/lib/akeyless/models/gateway_update_item.rb +21 -1
  28. data/lib/akeyless/models/gateway_update_migration.rb +24 -2
  29. data/lib/akeyless/models/gcp_target_details.rb +10 -2
  30. data/lib/akeyless/models/generate_csr.rb +30 -1
  31. data/lib/akeyless/models/update_classic_key_certificate.rb +265 -0
  32. data/lib/akeyless/version.rb +1 -1
  33. data/lib/akeyless.rb +1 -0
  34. data/spec/models/update_classic_key_certificate_spec.rb +60 -0
  35. metadata +699 -695
@@ -50,12 +50,18 @@ module Akeyless
50
50
  # Set output format to JSON
51
51
  attr_accessor :json
52
52
 
53
+ # The type of the key to generate (classic-key/dfc)
54
+ attr_accessor :key_type
55
+
53
56
  # The classic key name
54
57
  attr_accessor :name
55
58
 
56
59
  # The organization to be included in the CSR certificate
57
60
  attr_accessor :org
58
61
 
62
+ # The number of fragments that the item will be split into (not includes customer fragment)
63
+ attr_accessor :split_level
64
+
59
65
  # The state to be included in the CSR certificate
60
66
  attr_accessor :state
61
67
 
@@ -83,8 +89,10 @@ module Akeyless
83
89
  :'generate_key' => :'generate-key',
84
90
  :'ip_addresses' => :'ip-addresses',
85
91
  :'json' => :'json',
92
+ :'key_type' => :'key-type',
86
93
  :'name' => :'name',
87
94
  :'org' => :'org',
95
+ :'split_level' => :'split-level',
88
96
  :'state' => :'state',
89
97
  :'token' => :'token',
90
98
  :'uid_token' => :'uid-token',
@@ -112,8 +120,10 @@ module Akeyless
112
120
  :'generate_key' => :'Boolean',
113
121
  :'ip_addresses' => :'String',
114
122
  :'json' => :'Boolean',
123
+ :'key_type' => :'String',
115
124
  :'name' => :'String',
116
125
  :'org' => :'String',
126
+ :'split_level' => :'Integer',
117
127
  :'state' => :'String',
118
128
  :'token' => :'String',
119
129
  :'uid_token' => :'String',
@@ -194,6 +204,12 @@ module Akeyless
194
204
  self.json = false
195
205
  end
196
206
 
207
+ if attributes.key?(:'key_type')
208
+ self.key_type = attributes[:'key_type']
209
+ else
210
+ self.key_type = 'classic-key'
211
+ end
212
+
197
213
  if attributes.key?(:'name')
198
214
  self.name = attributes[:'name']
199
215
  else
@@ -204,6 +220,12 @@ module Akeyless
204
220
  self.org = attributes[:'org']
205
221
  end
206
222
 
223
+ if attributes.key?(:'split_level')
224
+ self.split_level = attributes[:'split_level']
225
+ else
226
+ self.split_level = 3
227
+ end
228
+
207
229
  if attributes.key?(:'state')
208
230
  self.state = attributes[:'state']
209
231
  end
@@ -230,6 +252,10 @@ module Akeyless
230
252
  invalid_properties.push('invalid value for "common_name", common_name cannot be nil.')
231
253
  end
232
254
 
255
+ if @key_type.nil?
256
+ invalid_properties.push('invalid value for "key_type", key_type cannot be nil.')
257
+ end
258
+
233
259
  if @name.nil?
234
260
  invalid_properties.push('invalid value for "name", name cannot be nil.')
235
261
  end
@@ -242,6 +268,7 @@ module Akeyless
242
268
  def valid?
243
269
  warn '[DEPRECATED] the `valid?` method is obsolete'
244
270
  return false if @common_name.nil?
271
+ return false if @key_type.nil?
245
272
  return false if @name.nil?
246
273
  true
247
274
  end
@@ -263,8 +290,10 @@ module Akeyless
263
290
  generate_key == o.generate_key &&
264
291
  ip_addresses == o.ip_addresses &&
265
292
  json == o.json &&
293
+ key_type == o.key_type &&
266
294
  name == o.name &&
267
295
  org == o.org &&
296
+ split_level == o.split_level &&
268
297
  state == o.state &&
269
298
  token == o.token &&
270
299
  uid_token == o.uid_token &&
@@ -280,7 +309,7 @@ module Akeyless
280
309
  # Calculates hash code according to all attributes.
281
310
  # @return [Integer] Hash code
282
311
  def hash
283
- [alg, alt_names, certificate_type, city, common_name, country, critical, dep, email_addresses, generate_key, ip_addresses, json, name, org, state, token, uid_token, uri_sans].hash
312
+ [alg, alt_names, certificate_type, city, common_name, country, critical, dep, email_addresses, generate_key, ip_addresses, json, key_type, name, org, split_level, state, token, uid_token, uri_sans].hash
284
313
  end
285
314
 
286
315
  # Builds the object from hash
@@ -0,0 +1,265 @@
1
+ =begin
2
+ #Akeyless API
3
+
4
+ #The purpose of this application is to provide access to Akeyless API.
5
+
6
+ The version of the OpenAPI document: 2.0
7
+ Contact: support@akeyless.io
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 7.2.0-SNAPSHOT
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Akeyless
17
+ # UpdateClassicKeyCertificate is a command that updates the certificate for a classic key
18
+ class UpdateClassicKeyCertificate
19
+ # PEM Certificate in a Base64 format. Used for updating RSA keys' certificates.
20
+ attr_accessor :cert_file_data
21
+
22
+ # Set output format to JSON
23
+ attr_accessor :json
24
+
25
+ # ClassicKey name
26
+ attr_accessor :name
27
+
28
+ # Authentication token (see `/auth` and `/configure`)
29
+ attr_accessor :token
30
+
31
+ # The universal identity token, Required only for universal_identity authentication
32
+ attr_accessor :uid_token
33
+
34
+ # Attribute mapping from ruby-style variable name to JSON key.
35
+ def self.attribute_map
36
+ {
37
+ :'cert_file_data' => :'cert-file-data',
38
+ :'json' => :'json',
39
+ :'name' => :'name',
40
+ :'token' => :'token',
41
+ :'uid_token' => :'uid-token'
42
+ }
43
+ end
44
+
45
+ # Returns all the JSON keys this model knows about
46
+ def self.acceptable_attributes
47
+ attribute_map.values
48
+ end
49
+
50
+ # Attribute type mapping.
51
+ def self.openapi_types
52
+ {
53
+ :'cert_file_data' => :'String',
54
+ :'json' => :'Boolean',
55
+ :'name' => :'String',
56
+ :'token' => :'String',
57
+ :'uid_token' => :'String'
58
+ }
59
+ end
60
+
61
+ # List of attributes with nullable: true
62
+ def self.openapi_nullable
63
+ Set.new([
64
+ ])
65
+ end
66
+
67
+ # Initializes the object
68
+ # @param [Hash] attributes Model attributes in the form of hash
69
+ def initialize(attributes = {})
70
+ if (!attributes.is_a?(Hash))
71
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Akeyless::UpdateClassicKeyCertificate` initialize method"
72
+ end
73
+
74
+ # check to see if the attribute exists and convert string to symbol for hash key
75
+ attributes = attributes.each_with_object({}) { |(k, v), h|
76
+ if (!self.class.attribute_map.key?(k.to_sym))
77
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Akeyless::UpdateClassicKeyCertificate`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
78
+ end
79
+ h[k.to_sym] = v
80
+ }
81
+
82
+ if attributes.key?(:'cert_file_data')
83
+ self.cert_file_data = attributes[:'cert_file_data']
84
+ end
85
+
86
+ if attributes.key?(:'json')
87
+ self.json = attributes[:'json']
88
+ else
89
+ self.json = false
90
+ end
91
+
92
+ if attributes.key?(:'name')
93
+ self.name = attributes[:'name']
94
+ else
95
+ self.name = nil
96
+ end
97
+
98
+ if attributes.key?(:'token')
99
+ self.token = attributes[:'token']
100
+ end
101
+
102
+ if attributes.key?(:'uid_token')
103
+ self.uid_token = attributes[:'uid_token']
104
+ end
105
+ end
106
+
107
+ # Show invalid properties with the reasons. Usually used together with valid?
108
+ # @return Array for valid properties with the reasons
109
+ def list_invalid_properties
110
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
111
+ invalid_properties = Array.new
112
+ if @name.nil?
113
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
114
+ end
115
+
116
+ invalid_properties
117
+ end
118
+
119
+ # Check to see if the all the properties in the model are valid
120
+ # @return true if the model is valid
121
+ def valid?
122
+ warn '[DEPRECATED] the `valid?` method is obsolete'
123
+ return false if @name.nil?
124
+ true
125
+ end
126
+
127
+ # Checks equality by comparing each attribute.
128
+ # @param [Object] Object to be compared
129
+ def ==(o)
130
+ return true if self.equal?(o)
131
+ self.class == o.class &&
132
+ cert_file_data == o.cert_file_data &&
133
+ json == o.json &&
134
+ name == o.name &&
135
+ token == o.token &&
136
+ uid_token == o.uid_token
137
+ end
138
+
139
+ # @see the `==` method
140
+ # @param [Object] Object to be compared
141
+ def eql?(o)
142
+ self == o
143
+ end
144
+
145
+ # Calculates hash code according to all attributes.
146
+ # @return [Integer] Hash code
147
+ def hash
148
+ [cert_file_data, json, name, token, uid_token].hash
149
+ end
150
+
151
+ # Builds the object from hash
152
+ # @param [Hash] attributes Model attributes in the form of hash
153
+ # @return [Object] Returns the model itself
154
+ def self.build_from_hash(attributes)
155
+ return nil unless attributes.is_a?(Hash)
156
+ attributes = attributes.transform_keys(&:to_sym)
157
+ transformed_hash = {}
158
+ openapi_types.each_pair do |key, type|
159
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
160
+ transformed_hash["#{key}"] = nil
161
+ elsif type =~ /\AArray<(.*)>/i
162
+ # check to ensure the input is an array given that the attribute
163
+ # is documented as an array but the input is not
164
+ if attributes[attribute_map[key]].is_a?(Array)
165
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
166
+ end
167
+ elsif !attributes[attribute_map[key]].nil?
168
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
169
+ end
170
+ end
171
+ new(transformed_hash)
172
+ end
173
+
174
+ # Deserializes the data based on type
175
+ # @param string type Data type
176
+ # @param string value Value to be deserialized
177
+ # @return [Object] Deserialized data
178
+ def self._deserialize(type, value)
179
+ case type.to_sym
180
+ when :Time
181
+ Time.parse(value)
182
+ when :Date
183
+ Date.parse(value)
184
+ when :String
185
+ value.to_s
186
+ when :Integer
187
+ value.to_i
188
+ when :Float
189
+ value.to_f
190
+ when :Boolean
191
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
192
+ true
193
+ else
194
+ false
195
+ end
196
+ when :Object
197
+ # generic object (usually a Hash), return directly
198
+ value
199
+ when /\AArray<(?<inner_type>.+)>\z/
200
+ inner_type = Regexp.last_match[:inner_type]
201
+ value.map { |v| _deserialize(inner_type, v) }
202
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
203
+ k_type = Regexp.last_match[:k_type]
204
+ v_type = Regexp.last_match[:v_type]
205
+ {}.tap do |hash|
206
+ value.each do |k, v|
207
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
208
+ end
209
+ end
210
+ else # model
211
+ # models (e.g. Pet) or oneOf
212
+ klass = Akeyless.const_get(type)
213
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
214
+ end
215
+ end
216
+
217
+ # Returns the string representation of the object
218
+ # @return [String] String presentation of the object
219
+ def to_s
220
+ to_hash.to_s
221
+ end
222
+
223
+ # to_body is an alias to to_hash (backward compatibility)
224
+ # @return [Hash] Returns the object in the form of hash
225
+ def to_body
226
+ to_hash
227
+ end
228
+
229
+ # Returns the object in the form of hash
230
+ # @return [Hash] Returns the object in the form of hash
231
+ def to_hash
232
+ hash = {}
233
+ self.class.attribute_map.each_pair do |attr, param|
234
+ value = self.send(attr)
235
+ if value.nil?
236
+ is_nullable = self.class.openapi_nullable.include?(attr)
237
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
238
+ end
239
+
240
+ hash[param] = _to_hash(value)
241
+ end
242
+ hash
243
+ end
244
+
245
+ # Outputs non-array value in the form of hash
246
+ # For object, use to_hash. Otherwise, just return the value
247
+ # @param [Object] value Any valid value
248
+ # @return [Hash] Returns the value in the form of hash
249
+ def _to_hash(value)
250
+ if value.is_a?(Array)
251
+ value.compact.map { |v| _to_hash(v) }
252
+ elsif value.is_a?(Hash)
253
+ {}.tap do |hash|
254
+ value.each { |k, v| hash[k] = _to_hash(v) }
255
+ end
256
+ elsif value.respond_to? :to_hash
257
+ value.to_hash
258
+ else
259
+ value
260
+ end
261
+ end
262
+
263
+ end
264
+
265
+ end
@@ -11,5 +11,5 @@ OpenAPI Generator version: 7.2.0-SNAPSHOT
11
11
  =end
12
12
 
13
13
  module Akeyless
14
- VERSION = '3.5.1'
14
+ VERSION = '3.5.2'
15
15
  end
data/lib/akeyless.rb CHANGED
@@ -660,6 +660,7 @@ require 'akeyless/models/update_azure_target'
660
660
  require 'akeyless/models/update_azure_target_output'
661
661
  require 'akeyless/models/update_certificate_output'
662
662
  require 'akeyless/models/update_certificate_value'
663
+ require 'akeyless/models/update_classic_key_certificate'
663
664
  require 'akeyless/models/update_db_target'
664
665
  require 'akeyless/models/update_db_target_details'
665
666
  require 'akeyless/models/update_db_target_output'
@@ -0,0 +1,60 @@
1
+ =begin
2
+ #Akeyless API
3
+
4
+ #The purpose of this application is to provide access to Akeyless API.
5
+
6
+ The version of the OpenAPI document: 2.0
7
+ Contact: support@akeyless.io
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 7.2.0-SNAPSHOT
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+ require 'json'
15
+ require 'date'
16
+
17
+ # Unit tests for Akeyless::UpdateClassicKeyCertificate
18
+ # Automatically generated by openapi-generator (https://openapi-generator.tech)
19
+ # Please update as you see appropriate
20
+ describe Akeyless::UpdateClassicKeyCertificate do
21
+ let(:instance) { Akeyless::UpdateClassicKeyCertificate.new }
22
+
23
+ describe 'test an instance of UpdateClassicKeyCertificate' do
24
+ it 'should create an instance of UpdateClassicKeyCertificate' do
25
+ # uncomment below to test the instance creation
26
+ #expect(instance).to be_instance_of(Akeyless::UpdateClassicKeyCertificate)
27
+ end
28
+ end
29
+
30
+ describe 'test attribute "cert_file_data"' do
31
+ it 'should work' do
32
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
33
+ end
34
+ end
35
+
36
+ describe 'test attribute "json"' do
37
+ it 'should work' do
38
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
39
+ end
40
+ end
41
+
42
+ describe 'test attribute "name"' do
43
+ it 'should work' do
44
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
45
+ end
46
+ end
47
+
48
+ describe 'test attribute "token"' do
49
+ it 'should work' do
50
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
51
+ end
52
+ end
53
+
54
+ describe 'test attribute "uid_token"' do
55
+ it 'should work' do
56
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
57
+ end
58
+ end
59
+
60
+ end