akeyless 5.0.30 → 5.0.31

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.
@@ -0,0 +1,454 @@
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: 3.0
7
+ Contact: support@akeyless.io
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.10.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Akeyless
17
+ class TargetCreateAerospike
18
+ # Username of an account with the user-admin role
19
+ attr_accessor :admin_username
20
+
21
+ # Client ID for Aerospike Cloud authentication (relevant only for Aerospike Cloud)
22
+ attr_accessor :aerospike_client_id
23
+
24
+ # Client secret for Aerospike Cloud authentication (relevant only for Aerospike Cloud)
25
+ attr_accessor :aerospike_client_secret
26
+
27
+ # Set to 'true' for Aerospike Cloud deployments
28
+ attr_accessor :aerospike_cloud
29
+
30
+ # Cloud cluster ID (relevant only for Aerospike Cloud)
31
+ attr_accessor :aerospike_cluster_id
32
+
33
+ # Client certificate for mTLS (mTLS only)
34
+ attr_accessor :client_certificate
35
+
36
+ # Client private key for mTLS (mTLS only)
37
+ attr_accessor :client_private_key
38
+
39
+ # TLS server name used to verify the certificate hostname. If empty, the Aerospike hostname is used.
40
+ attr_accessor :db_server_name
41
+
42
+ # Protection from accidental deletion of this object [true/false]
43
+ attr_accessor :delete_protection
44
+
45
+ # Description of the object
46
+ attr_accessor :description
47
+
48
+ # Enable mutual TLS authentication - requires --ssl=true (true/false)
49
+ attr_accessor :enable_mtls
50
+
51
+ # Aerospike host address and port (e.g. url.to.aerospike.db)
52
+ attr_accessor :hostname
53
+
54
+ # Set output format to JSON
55
+ attr_accessor :json
56
+
57
+ # The name of a key that used to encrypt the target secret value (if empty, the account default protectionKey key will be used)
58
+ attr_accessor :key
59
+
60
+ # Set the maximum number of versions, limited by the account settings defaults.
61
+ attr_accessor :max_versions
62
+
63
+ # Target name
64
+ attr_accessor :name
65
+
66
+ # Namespace name (relevant only for Aerospike db)
67
+ attr_accessor :namespace
68
+
69
+ # Password for the admin user
70
+ attr_accessor :password
71
+
72
+ # Database connection port
73
+ attr_accessor :port
74
+
75
+ # Skip server name verification while still validating the certificate chain (true/false). Empty means do not skip.
76
+ attr_accessor :skip_server_name_validation
77
+
78
+ # Enable SSL encryption (true/false)
79
+ attr_accessor :ssl
80
+
81
+ # Base64-encoded SSL CA certificate from a trusted Certificate Authority (CA)
82
+ attr_accessor :ssl_certificate
83
+
84
+ # Authentication token (see `/auth` and `/configure`)
85
+ attr_accessor :token
86
+
87
+ # The universal identity token, Required only for universal_identity authentication
88
+ attr_accessor :uid_token
89
+
90
+ # Attribute mapping from ruby-style variable name to JSON key.
91
+ def self.attribute_map
92
+ {
93
+ :'admin_username' => :'admin-username',
94
+ :'aerospike_client_id' => :'aerospike-client-id',
95
+ :'aerospike_client_secret' => :'aerospike-client-secret',
96
+ :'aerospike_cloud' => :'aerospike-cloud',
97
+ :'aerospike_cluster_id' => :'aerospike-cluster-id',
98
+ :'client_certificate' => :'client-certificate',
99
+ :'client_private_key' => :'client-private-key',
100
+ :'db_server_name' => :'db-server-name',
101
+ :'delete_protection' => :'delete_protection',
102
+ :'description' => :'description',
103
+ :'enable_mtls' => :'enable-mtls',
104
+ :'hostname' => :'hostname',
105
+ :'json' => :'json',
106
+ :'key' => :'key',
107
+ :'max_versions' => :'max-versions',
108
+ :'name' => :'name',
109
+ :'namespace' => :'namespace',
110
+ :'password' => :'password',
111
+ :'port' => :'port',
112
+ :'skip_server_name_validation' => :'skip-server-name-validation',
113
+ :'ssl' => :'ssl',
114
+ :'ssl_certificate' => :'ssl-certificate',
115
+ :'token' => :'token',
116
+ :'uid_token' => :'uid-token'
117
+ }
118
+ end
119
+
120
+ # Returns all the JSON keys this model knows about
121
+ def self.acceptable_attributes
122
+ attribute_map.values
123
+ end
124
+
125
+ # Attribute type mapping.
126
+ def self.openapi_types
127
+ {
128
+ :'admin_username' => :'String',
129
+ :'aerospike_client_id' => :'String',
130
+ :'aerospike_client_secret' => :'String',
131
+ :'aerospike_cloud' => :'Boolean',
132
+ :'aerospike_cluster_id' => :'String',
133
+ :'client_certificate' => :'String',
134
+ :'client_private_key' => :'String',
135
+ :'db_server_name' => :'String',
136
+ :'delete_protection' => :'String',
137
+ :'description' => :'String',
138
+ :'enable_mtls' => :'Boolean',
139
+ :'hostname' => :'String',
140
+ :'json' => :'Boolean',
141
+ :'key' => :'String',
142
+ :'max_versions' => :'String',
143
+ :'name' => :'String',
144
+ :'namespace' => :'String',
145
+ :'password' => :'String',
146
+ :'port' => :'String',
147
+ :'skip_server_name_validation' => :'String',
148
+ :'ssl' => :'Boolean',
149
+ :'ssl_certificate' => :'String',
150
+ :'token' => :'String',
151
+ :'uid_token' => :'String'
152
+ }
153
+ end
154
+
155
+ # List of attributes with nullable: true
156
+ def self.openapi_nullable
157
+ Set.new([
158
+ ])
159
+ end
160
+
161
+ # Initializes the object
162
+ # @param [Hash] attributes Model attributes in the form of hash
163
+ def initialize(attributes = {})
164
+ if (!attributes.is_a?(Hash))
165
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Akeyless::TargetCreateAerospike` initialize method"
166
+ end
167
+
168
+ # check to see if the attribute exists and convert string to symbol for hash key
169
+ attributes = attributes.each_with_object({}) { |(k, v), h|
170
+ if (!self.class.attribute_map.key?(k.to_sym))
171
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Akeyless::TargetCreateAerospike`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
172
+ end
173
+ h[k.to_sym] = v
174
+ }
175
+
176
+ if attributes.key?(:'admin_username')
177
+ self.admin_username = attributes[:'admin_username']
178
+ end
179
+
180
+ if attributes.key?(:'aerospike_client_id')
181
+ self.aerospike_client_id = attributes[:'aerospike_client_id']
182
+ end
183
+
184
+ if attributes.key?(:'aerospike_client_secret')
185
+ self.aerospike_client_secret = attributes[:'aerospike_client_secret']
186
+ end
187
+
188
+ if attributes.key?(:'aerospike_cloud')
189
+ self.aerospike_cloud = attributes[:'aerospike_cloud']
190
+ end
191
+
192
+ if attributes.key?(:'aerospike_cluster_id')
193
+ self.aerospike_cluster_id = attributes[:'aerospike_cluster_id']
194
+ end
195
+
196
+ if attributes.key?(:'client_certificate')
197
+ self.client_certificate = attributes[:'client_certificate']
198
+ end
199
+
200
+ if attributes.key?(:'client_private_key')
201
+ self.client_private_key = attributes[:'client_private_key']
202
+ end
203
+
204
+ if attributes.key?(:'db_server_name')
205
+ self.db_server_name = attributes[:'db_server_name']
206
+ end
207
+
208
+ if attributes.key?(:'delete_protection')
209
+ self.delete_protection = attributes[:'delete_protection']
210
+ end
211
+
212
+ if attributes.key?(:'description')
213
+ self.description = attributes[:'description']
214
+ end
215
+
216
+ if attributes.key?(:'enable_mtls')
217
+ self.enable_mtls = attributes[:'enable_mtls']
218
+ end
219
+
220
+ if attributes.key?(:'hostname')
221
+ self.hostname = attributes[:'hostname']
222
+ end
223
+
224
+ if attributes.key?(:'json')
225
+ self.json = attributes[:'json']
226
+ else
227
+ self.json = false
228
+ end
229
+
230
+ if attributes.key?(:'key')
231
+ self.key = attributes[:'key']
232
+ end
233
+
234
+ if attributes.key?(:'max_versions')
235
+ self.max_versions = attributes[:'max_versions']
236
+ end
237
+
238
+ if attributes.key?(:'name')
239
+ self.name = attributes[:'name']
240
+ else
241
+ self.name = nil
242
+ end
243
+
244
+ if attributes.key?(:'namespace')
245
+ self.namespace = attributes[:'namespace']
246
+ end
247
+
248
+ if attributes.key?(:'password')
249
+ self.password = attributes[:'password']
250
+ end
251
+
252
+ if attributes.key?(:'port')
253
+ self.port = attributes[:'port']
254
+ end
255
+
256
+ if attributes.key?(:'skip_server_name_validation')
257
+ self.skip_server_name_validation = attributes[:'skip_server_name_validation']
258
+ end
259
+
260
+ if attributes.key?(:'ssl')
261
+ self.ssl = attributes[:'ssl']
262
+ end
263
+
264
+ if attributes.key?(:'ssl_certificate')
265
+ self.ssl_certificate = attributes[:'ssl_certificate']
266
+ end
267
+
268
+ if attributes.key?(:'token')
269
+ self.token = attributes[:'token']
270
+ end
271
+
272
+ if attributes.key?(:'uid_token')
273
+ self.uid_token = attributes[:'uid_token']
274
+ end
275
+ end
276
+
277
+ # Show invalid properties with the reasons. Usually used together with valid?
278
+ # @return Array for valid properties with the reasons
279
+ def list_invalid_properties
280
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
281
+ invalid_properties = Array.new
282
+ if @name.nil?
283
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
284
+ end
285
+
286
+ invalid_properties
287
+ end
288
+
289
+ # Check to see if the all the properties in the model are valid
290
+ # @return true if the model is valid
291
+ def valid?
292
+ warn '[DEPRECATED] the `valid?` method is obsolete'
293
+ return false if @name.nil?
294
+ true
295
+ end
296
+
297
+ # Checks equality by comparing each attribute.
298
+ # @param [Object] Object to be compared
299
+ def ==(o)
300
+ return true if self.equal?(o)
301
+ self.class == o.class &&
302
+ admin_username == o.admin_username &&
303
+ aerospike_client_id == o.aerospike_client_id &&
304
+ aerospike_client_secret == o.aerospike_client_secret &&
305
+ aerospike_cloud == o.aerospike_cloud &&
306
+ aerospike_cluster_id == o.aerospike_cluster_id &&
307
+ client_certificate == o.client_certificate &&
308
+ client_private_key == o.client_private_key &&
309
+ db_server_name == o.db_server_name &&
310
+ delete_protection == o.delete_protection &&
311
+ description == o.description &&
312
+ enable_mtls == o.enable_mtls &&
313
+ hostname == o.hostname &&
314
+ json == o.json &&
315
+ key == o.key &&
316
+ max_versions == o.max_versions &&
317
+ name == o.name &&
318
+ namespace == o.namespace &&
319
+ password == o.password &&
320
+ port == o.port &&
321
+ skip_server_name_validation == o.skip_server_name_validation &&
322
+ ssl == o.ssl &&
323
+ ssl_certificate == o.ssl_certificate &&
324
+ token == o.token &&
325
+ uid_token == o.uid_token
326
+ end
327
+
328
+ # @see the `==` method
329
+ # @param [Object] Object to be compared
330
+ def eql?(o)
331
+ self == o
332
+ end
333
+
334
+ # Calculates hash code according to all attributes.
335
+ # @return [Integer] Hash code
336
+ def hash
337
+ [admin_username, aerospike_client_id, aerospike_client_secret, aerospike_cloud, aerospike_cluster_id, client_certificate, client_private_key, db_server_name, delete_protection, description, enable_mtls, hostname, json, key, max_versions, name, namespace, password, port, skip_server_name_validation, ssl, ssl_certificate, token, uid_token].hash
338
+ end
339
+
340
+ # Builds the object from hash
341
+ # @param [Hash] attributes Model attributes in the form of hash
342
+ # @return [Object] Returns the model itself
343
+ def self.build_from_hash(attributes)
344
+ return nil unless attributes.is_a?(Hash)
345
+ attributes = attributes.transform_keys(&:to_sym)
346
+ transformed_hash = {}
347
+ openapi_types.each_pair do |key, type|
348
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
349
+ transformed_hash["#{key}"] = nil
350
+ elsif type =~ /\AArray<(.*)>/i
351
+ # check to ensure the input is an array given that the attribute
352
+ # is documented as an array but the input is not
353
+ if attributes[attribute_map[key]].is_a?(Array)
354
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
355
+ end
356
+ elsif !attributes[attribute_map[key]].nil?
357
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
358
+ end
359
+ end
360
+ new(transformed_hash)
361
+ end
362
+
363
+ # Deserializes the data based on type
364
+ # @param string type Data type
365
+ # @param string value Value to be deserialized
366
+ # @return [Object] Deserialized data
367
+ def self._deserialize(type, value)
368
+ case type.to_sym
369
+ when :Time
370
+ Time.parse(value)
371
+ when :Date
372
+ Date.parse(value)
373
+ when :String
374
+ value.to_s
375
+ when :Integer
376
+ value.to_i
377
+ when :Float
378
+ value.to_f
379
+ when :Boolean
380
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
381
+ true
382
+ else
383
+ false
384
+ end
385
+ when :Object
386
+ # generic object (usually a Hash), return directly
387
+ value
388
+ when /\AArray<(?<inner_type>.+)>\z/
389
+ inner_type = Regexp.last_match[:inner_type]
390
+ value.map { |v| _deserialize(inner_type, v) }
391
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
392
+ k_type = Regexp.last_match[:k_type]
393
+ v_type = Regexp.last_match[:v_type]
394
+ {}.tap do |hash|
395
+ value.each do |k, v|
396
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
397
+ end
398
+ end
399
+ else # model
400
+ # models (e.g. Pet) or oneOf
401
+ klass = Akeyless.const_get(type)
402
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
403
+ end
404
+ end
405
+
406
+ # Returns the string representation of the object
407
+ # @return [String] String presentation of the object
408
+ def to_s
409
+ to_hash.to_s
410
+ end
411
+
412
+ # to_body is an alias to to_hash (backward compatibility)
413
+ # @return [Hash] Returns the object in the form of hash
414
+ def to_body
415
+ to_hash
416
+ end
417
+
418
+ # Returns the object in the form of hash
419
+ # @return [Hash] Returns the object in the form of hash
420
+ def to_hash
421
+ hash = {}
422
+ self.class.attribute_map.each_pair do |attr, param|
423
+ value = self.send(attr)
424
+ if value.nil?
425
+ is_nullable = self.class.openapi_nullable.include?(attr)
426
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
427
+ end
428
+
429
+ hash[param] = _to_hash(value)
430
+ end
431
+ hash
432
+ end
433
+
434
+ # Outputs non-array value in the form of hash
435
+ # For object, use to_hash. Otherwise, just return the value
436
+ # @param [Object] value Any valid value
437
+ # @return [Hash] Returns the value in the form of hash
438
+ def _to_hash(value)
439
+ if value.is_a?(Array)
440
+ value.compact.map { |v| _to_hash(v) }
441
+ elsif value.is_a?(Hash)
442
+ {}.tap do |hash|
443
+ value.each { |k, v| hash[k] = _to_hash(v) }
444
+ end
445
+ elsif value.respond_to? :to_hash
446
+ value.to_hash
447
+ else
448
+ value
449
+ end
450
+ end
451
+
452
+ end
453
+
454
+ end
@@ -15,6 +15,8 @@ require 'time'
15
15
 
16
16
  module Akeyless
17
17
  class TargetTypeDetailsInput
18
+ attr_accessor :aerospike_target_details
19
+
18
20
  attr_accessor :anthropic_target_details
19
21
 
20
22
  attr_accessor :artifactory_target_details
@@ -102,6 +104,7 @@ module Akeyless
102
104
  # Attribute mapping from ruby-style variable name to JSON key.
103
105
  def self.attribute_map
104
106
  {
107
+ :'aerospike_target_details' => :'aerospike_target_details',
105
108
  :'anthropic_target_details' => :'anthropic_target_details',
106
109
  :'artifactory_target_details' => :'artifactory_target_details',
107
110
  :'aws_target_details' => :'aws_target_details',
@@ -155,6 +158,7 @@ module Akeyless
155
158
  # Attribute type mapping.
156
159
  def self.openapi_types
157
160
  {
161
+ :'aerospike_target_details' => :'AerospikeTargetDetails',
158
162
  :'anthropic_target_details' => :'AnthropicTargetDetails',
159
163
  :'artifactory_target_details' => :'ArtifactoryTargetDetails',
160
164
  :'aws_target_details' => :'AWSTargetDetails',
@@ -221,6 +225,10 @@ module Akeyless
221
225
  h[k.to_sym] = v
222
226
  }
223
227
 
228
+ if attributes.key?(:'aerospike_target_details')
229
+ self.aerospike_target_details = attributes[:'aerospike_target_details']
230
+ end
231
+
224
232
  if attributes.key?(:'anthropic_target_details')
225
233
  self.anthropic_target_details = attributes[:'anthropic_target_details']
226
234
  end
@@ -410,6 +418,7 @@ module Akeyless
410
418
  def ==(o)
411
419
  return true if self.equal?(o)
412
420
  self.class == o.class &&
421
+ aerospike_target_details == o.aerospike_target_details &&
413
422
  anthropic_target_details == o.anthropic_target_details &&
414
423
  artifactory_target_details == o.artifactory_target_details &&
415
424
  aws_target_details == o.aws_target_details &&
@@ -463,7 +472,7 @@ module Akeyless
463
472
  # Calculates hash code according to all attributes.
464
473
  # @return [Integer] Hash code
465
474
  def hash
466
- [anthropic_target_details, artifactory_target_details, aws_target_details, azure_target_details, bedrock_target_details, chef_target_details, cloudflare_target_details, custom_dns_target_details, custom_target_details, db_target_details, digicert_target_details, dockerhub_target_details, eks_target_details, gcp_target_details, gemini_target_details, github_target_details, gitlab_target_details, gke_target_details, globalsign_atlas_target_details, globalsign_target_details, godaddy_target_details, google_trust_target_details, grok_target_details, hashi_vault_target_details, keycloak_target_details, ldap_target_details, letsencrypt_target_details, linked_target_details, mongo_db_target_details, native_k8s_target_details, okta_target_details, openai_target_details, ping_target_details, rabbit_mq_target_details, salesforce_target_details, sectigo_target_details, splunk_target_details, ssh_target_details, venafi_target_details, web_target_details, windows_target_details, zerossl_target_details].hash
475
+ [aerospike_target_details, anthropic_target_details, artifactory_target_details, aws_target_details, azure_target_details, bedrock_target_details, chef_target_details, cloudflare_target_details, custom_dns_target_details, custom_target_details, db_target_details, digicert_target_details, dockerhub_target_details, eks_target_details, gcp_target_details, gemini_target_details, github_target_details, gitlab_target_details, gke_target_details, globalsign_atlas_target_details, globalsign_target_details, godaddy_target_details, google_trust_target_details, grok_target_details, hashi_vault_target_details, keycloak_target_details, ldap_target_details, letsencrypt_target_details, linked_target_details, mongo_db_target_details, native_k8s_target_details, okta_target_details, openai_target_details, ping_target_details, rabbit_mq_target_details, salesforce_target_details, sectigo_target_details, splunk_target_details, ssh_target_details, venafi_target_details, web_target_details, windows_target_details, zerossl_target_details].hash
467
476
  end
468
477
 
469
478
  # Builds the object from hash