akeyless 5.0.21 → 5.0.23

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.
Files changed (241) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +35 -1
  3. data/docs/AccountGeneralSettings.md +6 -0
  4. data/docs/ActiveDirectoryPayload.md +6 -0
  5. data/docs/Auth.md +2 -0
  6. data/docs/AuthMethodCreateCert.md +2 -0
  7. data/docs/AuthMethodCreateUniversalIdentity.md +4 -0
  8. data/docs/AuthMethodUpdateCert.md +2 -0
  9. data/docs/AuthMethodUpdateUniversalIdentity.md +4 -0
  10. data/docs/AwsStorage.md +2 -0
  11. data/docs/AzureADAccessRules.md +2 -0
  12. data/docs/AzureTargetDetails.md +2 -0
  13. data/docs/CertAccessRules.md +2 -0
  14. data/docs/CertificateChainInfo.md +2 -0
  15. data/docs/Configure.md +2 -0
  16. data/docs/ConjurMigration.md +20 -0
  17. data/docs/ConjurPayload.md +24 -0
  18. data/docs/CreateAuthMethodCert.md +2 -0
  19. data/docs/CreateAuthMethodUniversalIdentity.md +4 -0
  20. data/docs/CreateAzureTarget.md +2 -0
  21. data/docs/CreateRotatedSecret.md +3 -1
  22. data/docs/CreateSecret.md +2 -0
  23. data/docs/CreateUSC.md +10 -0
  24. data/docs/DSProducerDetails.md +2 -0
  25. data/docs/DefaultAuthMethodSettings.md +20 -0
  26. data/docs/DeleteRoleRule.md +1 -1
  27. data/docs/DescribePermissions.md +1 -1
  28. data/docs/DigiCertTargetDetails.md +42 -0
  29. data/docs/EsmListSecretsOutput.md +3 -1
  30. data/docs/GatewayCreateMigration.md +19 -1
  31. data/docs/GatewayUpdateMigration.md +18 -0
  32. data/docs/GatewayUpdateRemoteAccessRdpRecordings.md +2 -0
  33. data/docs/GeneralConfigPart.md +4 -0
  34. data/docs/GetPKICertificateOutput.md +2 -0
  35. data/docs/GithubMetadata.md +28 -0
  36. data/docs/GoogleTrustTargetDetails.md +42 -0
  37. data/docs/HTTPChallengeInfo.md +26 -0
  38. data/docs/HashiPayload.md +5 -1
  39. data/docs/IssuerOverviewInfo.md +22 -0
  40. data/docs/Item.md +2 -0
  41. data/docs/ItemGeneralInfo.md +2 -0
  42. data/docs/ItemLockingSetting.md +20 -0
  43. data/docs/LockItem.md +28 -0
  44. data/docs/LockTarget.md +28 -0
  45. data/docs/LockingInfo.md +24 -0
  46. data/docs/MigrationStatusReplyObj.md +4 -0
  47. data/docs/MigrationsConfigPart.md +2 -0
  48. data/docs/NetappStorage.md +30 -0
  49. data/docs/ReverseRBAC.md +1 -1
  50. data/docs/RotatedSecretCreateAws.md +3 -1
  51. data/docs/RotatedSecretCreateAzure.md +3 -1
  52. data/docs/RotatedSecretCreateCustom.md +3 -1
  53. data/docs/RotatedSecretCreateLdap.md +3 -1
  54. data/docs/RotatedSecretCreateMongodb.md +3 -1
  55. data/docs/RotatedSecretCreateMssql.md +3 -1
  56. data/docs/RotatedSecretCreateMysql.md +3 -1
  57. data/docs/RotatedSecretCreateOracledb.md +3 -1
  58. data/docs/RotatedSecretCreatePostgresql.md +3 -1
  59. data/docs/RotatedSecretCreateRedshift.md +3 -1
  60. data/docs/RotatedSecretCreateSsh.md +3 -1
  61. data/docs/RotatedSecretCreateWindows.md +3 -1
  62. data/docs/RotatedSecretUpdateAws.md +3 -1
  63. data/docs/RotatedSecretUpdateAzure.md +3 -1
  64. data/docs/RotatedSecretUpdateCustom.md +3 -1
  65. data/docs/RotatedSecretUpdateLdap.md +3 -1
  66. data/docs/RotatedSecretUpdateMongodb.md +3 -1
  67. data/docs/RotatedSecretUpdateMssql.md +3 -1
  68. data/docs/RotatedSecretUpdateMysql.md +3 -1
  69. data/docs/RotatedSecretUpdateOracledb.md +3 -1
  70. data/docs/RotatedSecretUpdatePostgresql.md +3 -1
  71. data/docs/RotatedSecretUpdateRedshift.md +3 -1
  72. data/docs/RotatedSecretUpdateSsh.md +3 -1
  73. data/docs/RotatedSecretUpdateWindows.md +3 -1
  74. data/docs/SecretInfo.md +4 -0
  75. data/docs/SecureRemoteAccess.md +4 -0
  76. data/docs/SetRoleRule.md +1 -1
  77. data/docs/SyncCounters.md +22 -0
  78. data/docs/Target.md +2 -0
  79. data/docs/TargetCreateAzure.md +2 -0
  80. data/docs/TargetCreateDigiCert.md +50 -0
  81. data/docs/TargetCreateGoogleTrust.md +50 -0
  82. data/docs/TargetCreateLetsEncrypt.md +1 -1
  83. data/docs/TargetCreateSplunk.md +3 -1
  84. data/docs/TargetTypeDetailsInput.md +4 -0
  85. data/docs/TargetUpdateAzure.md +2 -0
  86. data/docs/TargetUpdateDigiCert.md +54 -0
  87. data/docs/TargetUpdateGoogleTrust.md +54 -0
  88. data/docs/TargetUpdateLetsEncrypt.md +1 -1
  89. data/docs/UniversalIdentityAccessRules.md +4 -0
  90. data/docs/UnlockItem.md +24 -0
  91. data/docs/UnlockTarget.md +24 -0
  92. data/docs/UpdateAccountSettings.md +4 -0
  93. data/docs/UpdateAuthMethodCert.md +2 -0
  94. data/docs/UpdateAuthMethodUniversalIdentity.md +4 -0
  95. data/docs/UpdateAzureTarget.md +2 -0
  96. data/docs/UpdateItem.md +3 -1
  97. data/docs/UpdateRotatedSecret.md +3 -1
  98. data/docs/UscCreate.md +2 -0
  99. data/docs/UscDelete.md +4 -0
  100. data/docs/UscGet.md +4 -0
  101. data/docs/UscListSecretsOutput.md +3 -1
  102. data/docs/UscUpdate.md +4 -0
  103. data/docs/V2Api.md +632 -2
  104. data/docs/ValidateCertificateChallenge.md +30 -0
  105. data/docs/ValidateCertificateChallengeOutput.md +24 -0
  106. data/docs/VaultAddress.md +20 -0
  107. data/docs/VaultAddressOutput.md +20 -0
  108. data/docs/WebBastionRdpRecord.md +2 -0
  109. data/lib/akeyless/api/v2_api.rb +640 -0
  110. data/lib/akeyless/models/account_general_settings.rb +28 -1
  111. data/lib/akeyless/models/active_directory_payload.rb +30 -1
  112. data/lib/akeyless/models/auth.rb +13 -1
  113. data/lib/akeyless/models/auth_method_create_cert.rb +11 -1
  114. data/lib/akeyless/models/auth_method_create_universal_identity.rb +25 -1
  115. data/lib/akeyless/models/auth_method_update_cert.rb +11 -1
  116. data/lib/akeyless/models/auth_method_update_universal_identity.rb +25 -1
  117. data/lib/akeyless/models/aws_storage.rb +10 -1
  118. data/lib/akeyless/models/azure_ad_access_rules.rb +11 -1
  119. data/lib/akeyless/models/azure_target_details.rb +10 -1
  120. data/lib/akeyless/models/cert_access_rules.rb +11 -1
  121. data/lib/akeyless/models/certificate_chain_info.rb +11 -1
  122. data/lib/akeyless/models/configure.rb +13 -1
  123. data/lib/akeyless/models/conjur_migration.rb +223 -0
  124. data/lib/akeyless/models/conjur_payload.rb +241 -0
  125. data/lib/akeyless/models/create_auth_method_cert.rb +11 -1
  126. data/lib/akeyless/models/create_auth_method_universal_identity.rb +25 -1
  127. data/lib/akeyless/models/create_azure_target.rb +13 -1
  128. data/lib/akeyless/models/create_rotated_secret.rb +12 -4
  129. data/lib/akeyless/models/create_secret.rb +11 -1
  130. data/lib/akeyless/models/create_usc.rb +54 -1
  131. data/lib/akeyless/models/default_auth_method_settings.rb +223 -0
  132. data/lib/akeyless/models/delete_role_rule.rb +1 -1
  133. data/lib/akeyless/models/describe_permissions.rb +1 -1
  134. data/lib/akeyless/models/digi_cert_target_details.rb +333 -0
  135. data/lib/akeyless/models/ds_producer_details.rb +10 -1
  136. data/lib/akeyless/models/esm_list_secrets_output.rb +15 -4
  137. data/lib/akeyless/models/gateway_create_migration.rb +94 -2
  138. data/lib/akeyless/models/gateway_update_migration.rb +93 -1
  139. data/lib/akeyless/models/gateway_update_remote_access_rdp_recordings.rb +11 -1
  140. data/lib/akeyless/models/general_config_part.rb +19 -1
  141. data/lib/akeyless/models/get_pki_certificate_output.rb +10 -1
  142. data/lib/akeyless/models/github_metadata.rb +259 -0
  143. data/lib/akeyless/models/google_trust_target_details.rb +335 -0
  144. data/lib/akeyless/models/hashi_payload.rb +22 -4
  145. data/lib/akeyless/models/http_challenge_info.rb +251 -0
  146. data/lib/akeyless/models/issuer_overview_info.rb +232 -0
  147. data/lib/akeyless/models/item.rb +10 -1
  148. data/lib/akeyless/models/item_general_info.rb +10 -1
  149. data/lib/akeyless/models/item_locking_setting.rb +223 -0
  150. data/lib/akeyless/models/lock_item.rb +274 -0
  151. data/lib/akeyless/models/lock_target.rb +274 -0
  152. data/lib/akeyless/models/locking_info.rb +243 -0
  153. data/lib/akeyless/models/migration_status_reply_obj.rb +19 -1
  154. data/lib/akeyless/models/migrations_config_part.rb +12 -1
  155. data/lib/akeyless/models/netapp_storage.rb +268 -0
  156. data/lib/akeyless/models/reverse_rbac.rb +1 -1
  157. data/lib/akeyless/models/rotated_secret_create_aws.rb +12 -4
  158. data/lib/akeyless/models/rotated_secret_create_azure.rb +12 -4
  159. data/lib/akeyless/models/rotated_secret_create_custom.rb +12 -4
  160. data/lib/akeyless/models/rotated_secret_create_ldap.rb +12 -4
  161. data/lib/akeyless/models/rotated_secret_create_mongodb.rb +12 -4
  162. data/lib/akeyless/models/rotated_secret_create_mssql.rb +12 -4
  163. data/lib/akeyless/models/rotated_secret_create_mysql.rb +12 -4
  164. data/lib/akeyless/models/rotated_secret_create_oracledb.rb +12 -4
  165. data/lib/akeyless/models/rotated_secret_create_postgresql.rb +12 -4
  166. data/lib/akeyless/models/rotated_secret_create_redshift.rb +12 -4
  167. data/lib/akeyless/models/rotated_secret_create_ssh.rb +12 -4
  168. data/lib/akeyless/models/rotated_secret_create_windows.rb +12 -4
  169. data/lib/akeyless/models/rotated_secret_update_aws.rb +12 -4
  170. data/lib/akeyless/models/rotated_secret_update_azure.rb +12 -4
  171. data/lib/akeyless/models/rotated_secret_update_custom.rb +12 -4
  172. data/lib/akeyless/models/rotated_secret_update_ldap.rb +12 -4
  173. data/lib/akeyless/models/rotated_secret_update_mongodb.rb +12 -4
  174. data/lib/akeyless/models/rotated_secret_update_mssql.rb +12 -4
  175. data/lib/akeyless/models/rotated_secret_update_mysql.rb +12 -4
  176. data/lib/akeyless/models/rotated_secret_update_oracledb.rb +12 -4
  177. data/lib/akeyless/models/rotated_secret_update_postgresql.rb +12 -4
  178. data/lib/akeyless/models/rotated_secret_update_redshift.rb +12 -4
  179. data/lib/akeyless/models/rotated_secret_update_ssh.rb +12 -4
  180. data/lib/akeyless/models/rotated_secret_update_windows.rb +12 -4
  181. data/lib/akeyless/models/secret_info.rb +19 -1
  182. data/lib/akeyless/models/secure_remote_access.rb +19 -1
  183. data/lib/akeyless/models/set_role_rule.rb +1 -1
  184. data/lib/akeyless/models/sync_counters.rb +233 -0
  185. data/lib/akeyless/models/target.rb +10 -1
  186. data/lib/akeyless/models/target_create_azure.rb +13 -1
  187. data/lib/akeyless/models/target_create_digi_cert.rb +398 -0
  188. data/lib/akeyless/models/target_create_google_trust.rb +398 -0
  189. data/lib/akeyless/models/target_create_lets_encrypt.rb +7 -0
  190. data/lib/akeyless/models/target_create_splunk.rb +11 -1
  191. data/lib/akeyless/models/target_type_details_input.rb +19 -1
  192. data/lib/akeyless/models/target_update_azure.rb +13 -1
  193. data/lib/akeyless/models/target_update_digi_cert.rb +418 -0
  194. data/lib/akeyless/models/target_update_google_trust.rb +418 -0
  195. data/lib/akeyless/models/target_update_lets_encrypt.rb +7 -0
  196. data/lib/akeyless/models/universal_identity_access_rules.rb +19 -1
  197. data/lib/akeyless/models/unlock_item.rb +254 -0
  198. data/lib/akeyless/models/unlock_target.rb +254 -0
  199. data/lib/akeyless/models/update_account_settings.rb +21 -1
  200. data/lib/akeyless/models/update_auth_method_cert.rb +11 -1
  201. data/lib/akeyless/models/update_auth_method_universal_identity.rb +25 -1
  202. data/lib/akeyless/models/update_azure_target.rb +13 -1
  203. data/lib/akeyless/models/update_item.rb +12 -4
  204. data/lib/akeyless/models/update_rotated_secret.rb +12 -4
  205. data/lib/akeyless/models/usc_create.rb +10 -1
  206. data/lib/akeyless/models/usc_delete.rb +20 -1
  207. data/lib/akeyless/models/usc_get.rb +20 -1
  208. data/lib/akeyless/models/usc_list_secrets_output.rb +15 -4
  209. data/lib/akeyless/models/usc_update.rb +20 -1
  210. data/lib/akeyless/models/validate_certificate_challenge.rb +279 -0
  211. data/lib/akeyless/models/validate_certificate_challenge_output.rb +242 -0
  212. data/lib/akeyless/models/vault_address.rb +227 -0
  213. data/lib/akeyless/models/vault_address_output.rb +223 -0
  214. data/lib/akeyless/models/web_bastion_rdp_record.rb +10 -1
  215. data/lib/akeyless/version.rb +1 -1
  216. data/lib/akeyless.rb +24 -0
  217. data/spec/models/conjur_migration_spec.rb +42 -0
  218. data/spec/models/conjur_payload_spec.rb +54 -0
  219. data/spec/models/default_auth_method_settings_spec.rb +42 -0
  220. data/spec/models/digi_cert_target_details_spec.rb +108 -0
  221. data/spec/models/github_metadata_spec.rb +66 -0
  222. data/spec/models/google_trust_target_details_spec.rb +108 -0
  223. data/spec/models/http_challenge_info_spec.rb +60 -0
  224. data/spec/models/issuer_overview_info_spec.rb +48 -0
  225. data/spec/models/item_locking_setting_spec.rb +42 -0
  226. data/spec/models/lock_item_spec.rb +66 -0
  227. data/spec/models/lock_target_spec.rb +66 -0
  228. data/spec/models/locking_info_spec.rb +54 -0
  229. data/spec/models/netapp_storage_spec.rb +72 -0
  230. data/spec/models/sync_counters_spec.rb +48 -0
  231. data/spec/models/target_create_digi_cert_spec.rb +132 -0
  232. data/spec/models/target_create_google_trust_spec.rb +132 -0
  233. data/spec/models/target_update_digi_cert_spec.rb +144 -0
  234. data/spec/models/target_update_google_trust_spec.rb +144 -0
  235. data/spec/models/unlock_item_spec.rb +54 -0
  236. data/spec/models/unlock_target_spec.rb +54 -0
  237. data/spec/models/validate_certificate_challenge_output_spec.rb +54 -0
  238. data/spec/models/validate_certificate_challenge_spec.rb +72 -0
  239. data/spec/models/vault_address_output_spec.rb +42 -0
  240. data/spec/models/vault_address_spec.rb +42 -0
  241. metadata +1233 -1134
@@ -0,0 +1,335 @@
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
+ # GoogleTrustTargetDetails defines configuration for Google Trust Services ACME target
18
+ class GoogleTrustTargetDetails
19
+ # ACME Account Private Key (PEM-encoded) Supports ECDSA (P-256, P-384, P-521), RSA (2048+), and Ed25519 Auto-generated as ECDSA P-256 during target creation bootstrap Stored encrypted, required for certificate operations and revocation
20
+ attr_accessor :account_key_pem
21
+
22
+ # ACME Account URL (returned after registration with Google Trust Services) Used to retrieve existing account instead of re-registering
23
+ attr_accessor :account_url
24
+
25
+ # ACMEEnvironment defines Let's Encrypt ACME directory environment
26
+ attr_accessor :acme_environment
27
+
28
+ # ACMEChallengeType defines ACME challenge type for Let's Encrypt
29
+ attr_accessor :challenge_type
30
+
31
+ # Name of DNS target (transient field - not stored in DB) Used by CLI to pass DNS target name to SDK for creating target_object_assoc Retrieved from target_object_assoc when reading target Required when ChallengeType is \"dns\"
32
+ attr_accessor :dns_target_name
33
+
34
+ attr_accessor :dns_target_type
35
+
36
+ # External Account Binding HMAC key (required for ACME account bootstrap on target creation) Not persisted after bootstrap
37
+ attr_accessor :eab_hmac_key
38
+
39
+ # External Account Binding key identifier (required for ACME account bootstrap on target creation) Not persisted after bootstrap
40
+ attr_accessor :eab_key_id
41
+
42
+ # Email address for ACME account registration Required
43
+ attr_accessor :email
44
+
45
+ # GCP Cloud DNS: Project ID Optional - can be derived from service account
46
+ attr_accessor :gcp_project
47
+
48
+ # AWS Route53: Hosted zone ID Required when DNSTargetType is AWS
49
+ attr_accessor :hosted_zone
50
+
51
+ # Azure DNS: Resource group name Required when DNSTargetType is Azure
52
+ attr_accessor :resource_group
53
+
54
+ # A Duration represents the elapsed time between two instants as an int64 nanosecond count. The representation limits the largest representable duration to approximately 290 years.
55
+ attr_accessor :timeout
56
+
57
+ # Attribute mapping from ruby-style variable name to JSON key.
58
+ def self.attribute_map
59
+ {
60
+ :'account_key_pem' => :'account_key_pem',
61
+ :'account_url' => :'account_url',
62
+ :'acme_environment' => :'acme_environment',
63
+ :'challenge_type' => :'challenge_type',
64
+ :'dns_target_name' => :'dns_target_name',
65
+ :'dns_target_type' => :'dns_target_type',
66
+ :'eab_hmac_key' => :'eab_hmac_key',
67
+ :'eab_key_id' => :'eab_key_id',
68
+ :'email' => :'email',
69
+ :'gcp_project' => :'gcp_project',
70
+ :'hosted_zone' => :'hosted_zone',
71
+ :'resource_group' => :'resource_group',
72
+ :'timeout' => :'timeout'
73
+ }
74
+ end
75
+
76
+ # Returns all the JSON keys this model knows about
77
+ def self.acceptable_attributes
78
+ attribute_map.values
79
+ end
80
+
81
+ # Attribute type mapping.
82
+ def self.openapi_types
83
+ {
84
+ :'account_key_pem' => :'String',
85
+ :'account_url' => :'String',
86
+ :'acme_environment' => :'String',
87
+ :'challenge_type' => :'String',
88
+ :'dns_target_name' => :'String',
89
+ :'dns_target_type' => :'String',
90
+ :'eab_hmac_key' => :'String',
91
+ :'eab_key_id' => :'String',
92
+ :'email' => :'String',
93
+ :'gcp_project' => :'String',
94
+ :'hosted_zone' => :'String',
95
+ :'resource_group' => :'String',
96
+ :'timeout' => :'Integer'
97
+ }
98
+ end
99
+
100
+ # List of attributes with nullable: true
101
+ def self.openapi_nullable
102
+ Set.new([
103
+ ])
104
+ end
105
+
106
+ # Initializes the object
107
+ # @param [Hash] attributes Model attributes in the form of hash
108
+ def initialize(attributes = {})
109
+ if (!attributes.is_a?(Hash))
110
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Akeyless::GoogleTrustTargetDetails` initialize method"
111
+ end
112
+
113
+ # check to see if the attribute exists and convert string to symbol for hash key
114
+ attributes = attributes.each_with_object({}) { |(k, v), h|
115
+ if (!self.class.attribute_map.key?(k.to_sym))
116
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Akeyless::GoogleTrustTargetDetails`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
117
+ end
118
+ h[k.to_sym] = v
119
+ }
120
+
121
+ if attributes.key?(:'account_key_pem')
122
+ self.account_key_pem = attributes[:'account_key_pem']
123
+ end
124
+
125
+ if attributes.key?(:'account_url')
126
+ self.account_url = attributes[:'account_url']
127
+ end
128
+
129
+ if attributes.key?(:'acme_environment')
130
+ self.acme_environment = attributes[:'acme_environment']
131
+ end
132
+
133
+ if attributes.key?(:'challenge_type')
134
+ self.challenge_type = attributes[:'challenge_type']
135
+ end
136
+
137
+ if attributes.key?(:'dns_target_name')
138
+ self.dns_target_name = attributes[:'dns_target_name']
139
+ end
140
+
141
+ if attributes.key?(:'dns_target_type')
142
+ self.dns_target_type = attributes[:'dns_target_type']
143
+ end
144
+
145
+ if attributes.key?(:'eab_hmac_key')
146
+ self.eab_hmac_key = attributes[:'eab_hmac_key']
147
+ end
148
+
149
+ if attributes.key?(:'eab_key_id')
150
+ self.eab_key_id = attributes[:'eab_key_id']
151
+ end
152
+
153
+ if attributes.key?(:'email')
154
+ self.email = attributes[:'email']
155
+ end
156
+
157
+ if attributes.key?(:'gcp_project')
158
+ self.gcp_project = attributes[:'gcp_project']
159
+ end
160
+
161
+ if attributes.key?(:'hosted_zone')
162
+ self.hosted_zone = attributes[:'hosted_zone']
163
+ end
164
+
165
+ if attributes.key?(:'resource_group')
166
+ self.resource_group = attributes[:'resource_group']
167
+ end
168
+
169
+ if attributes.key?(:'timeout')
170
+ self.timeout = attributes[:'timeout']
171
+ end
172
+ end
173
+
174
+ # Show invalid properties with the reasons. Usually used together with valid?
175
+ # @return Array for valid properties with the reasons
176
+ def list_invalid_properties
177
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
178
+ invalid_properties = Array.new
179
+ invalid_properties
180
+ end
181
+
182
+ # Check to see if the all the properties in the model are valid
183
+ # @return true if the model is valid
184
+ def valid?
185
+ warn '[DEPRECATED] the `valid?` method is obsolete'
186
+ true
187
+ end
188
+
189
+ # Checks equality by comparing each attribute.
190
+ # @param [Object] Object to be compared
191
+ def ==(o)
192
+ return true if self.equal?(o)
193
+ self.class == o.class &&
194
+ account_key_pem == o.account_key_pem &&
195
+ account_url == o.account_url &&
196
+ acme_environment == o.acme_environment &&
197
+ challenge_type == o.challenge_type &&
198
+ dns_target_name == o.dns_target_name &&
199
+ dns_target_type == o.dns_target_type &&
200
+ eab_hmac_key == o.eab_hmac_key &&
201
+ eab_key_id == o.eab_key_id &&
202
+ email == o.email &&
203
+ gcp_project == o.gcp_project &&
204
+ hosted_zone == o.hosted_zone &&
205
+ resource_group == o.resource_group &&
206
+ timeout == o.timeout
207
+ end
208
+
209
+ # @see the `==` method
210
+ # @param [Object] Object to be compared
211
+ def eql?(o)
212
+ self == o
213
+ end
214
+
215
+ # Calculates hash code according to all attributes.
216
+ # @return [Integer] Hash code
217
+ def hash
218
+ [account_key_pem, account_url, acme_environment, challenge_type, dns_target_name, dns_target_type, eab_hmac_key, eab_key_id, email, gcp_project, hosted_zone, resource_group, timeout].hash
219
+ end
220
+
221
+ # Builds the object from hash
222
+ # @param [Hash] attributes Model attributes in the form of hash
223
+ # @return [Object] Returns the model itself
224
+ def self.build_from_hash(attributes)
225
+ return nil unless attributes.is_a?(Hash)
226
+ attributes = attributes.transform_keys(&:to_sym)
227
+ transformed_hash = {}
228
+ openapi_types.each_pair do |key, type|
229
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
230
+ transformed_hash["#{key}"] = nil
231
+ elsif type =~ /\AArray<(.*)>/i
232
+ # check to ensure the input is an array given that the attribute
233
+ # is documented as an array but the input is not
234
+ if attributes[attribute_map[key]].is_a?(Array)
235
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
236
+ end
237
+ elsif !attributes[attribute_map[key]].nil?
238
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
239
+ end
240
+ end
241
+ new(transformed_hash)
242
+ end
243
+
244
+ # Deserializes the data based on type
245
+ # @param string type Data type
246
+ # @param string value Value to be deserialized
247
+ # @return [Object] Deserialized data
248
+ def self._deserialize(type, value)
249
+ case type.to_sym
250
+ when :Time
251
+ Time.parse(value)
252
+ when :Date
253
+ Date.parse(value)
254
+ when :String
255
+ value.to_s
256
+ when :Integer
257
+ value.to_i
258
+ when :Float
259
+ value.to_f
260
+ when :Boolean
261
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
262
+ true
263
+ else
264
+ false
265
+ end
266
+ when :Object
267
+ # generic object (usually a Hash), return directly
268
+ value
269
+ when /\AArray<(?<inner_type>.+)>\z/
270
+ inner_type = Regexp.last_match[:inner_type]
271
+ value.map { |v| _deserialize(inner_type, v) }
272
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
273
+ k_type = Regexp.last_match[:k_type]
274
+ v_type = Regexp.last_match[:v_type]
275
+ {}.tap do |hash|
276
+ value.each do |k, v|
277
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
278
+ end
279
+ end
280
+ else # model
281
+ # models (e.g. Pet) or oneOf
282
+ klass = Akeyless.const_get(type)
283
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
284
+ end
285
+ end
286
+
287
+ # Returns the string representation of the object
288
+ # @return [String] String presentation of the object
289
+ def to_s
290
+ to_hash.to_s
291
+ end
292
+
293
+ # to_body is an alias to to_hash (backward compatibility)
294
+ # @return [Hash] Returns the object in the form of hash
295
+ def to_body
296
+ to_hash
297
+ end
298
+
299
+ # Returns the object in the form of hash
300
+ # @return [Hash] Returns the object in the form of hash
301
+ def to_hash
302
+ hash = {}
303
+ self.class.attribute_map.each_pair do |attr, param|
304
+ value = self.send(attr)
305
+ if value.nil?
306
+ is_nullable = self.class.openapi_nullable.include?(attr)
307
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
308
+ end
309
+
310
+ hash[param] = _to_hash(value)
311
+ end
312
+ hash
313
+ end
314
+
315
+ # Outputs non-array value in the form of hash
316
+ # For object, use to_hash. Otherwise, just return the value
317
+ # @param [Object] value Any valid value
318
+ # @return [Hash] Returns the value in the form of hash
319
+ def _to_hash(value)
320
+ if value.is_a?(Array)
321
+ value.compact.map { |v| _to_hash(v) }
322
+ elsif value.is_a?(Hash)
323
+ {}.tap do |hash|
324
+ value.each { |k, v| hash[k] = _to_hash(v) }
325
+ end
326
+ elsif value.respond_to? :to_hash
327
+ value.to_hash
328
+ else
329
+ value
330
+ end
331
+ end
332
+
333
+ end
334
+
335
+ end
@@ -15,6 +15,8 @@ require 'time'
15
15
 
16
16
  module Akeyless
17
17
  class HashiPayload
18
+ attr_accessor :delete_sync_on_deletion
19
+
18
20
  attr_accessor :import_as_json
19
21
 
20
22
  attr_accessor :namespaces
@@ -23,13 +25,17 @@ module Akeyless
23
25
 
24
26
  attr_accessor :url
25
27
 
28
+ attr_accessor :usc_name
29
+
26
30
  # Attribute mapping from ruby-style variable name to JSON key.
27
31
  def self.attribute_map
28
32
  {
33
+ :'delete_sync_on_deletion' => :'delete_sync_on_deletion',
29
34
  :'import_as_json' => :'import_as_json',
30
35
  :'namespaces' => :'namespaces',
31
36
  :'token' => :'token',
32
- :'url' => :'url'
37
+ :'url' => :'url',
38
+ :'usc_name' => :'usc_name'
33
39
  }
34
40
  end
35
41
 
@@ -41,10 +47,12 @@ module Akeyless
41
47
  # Attribute type mapping.
42
48
  def self.openapi_types
43
49
  {
50
+ :'delete_sync_on_deletion' => :'Boolean',
44
51
  :'import_as_json' => :'Boolean',
45
52
  :'namespaces' => :'Array<String>',
46
53
  :'token' => :'String',
47
- :'url' => :'String'
54
+ :'url' => :'String',
55
+ :'usc_name' => :'String'
48
56
  }
49
57
  end
50
58
 
@@ -69,6 +77,10 @@ module Akeyless
69
77
  h[k.to_sym] = v
70
78
  }
71
79
 
80
+ if attributes.key?(:'delete_sync_on_deletion')
81
+ self.delete_sync_on_deletion = attributes[:'delete_sync_on_deletion']
82
+ end
83
+
72
84
  if attributes.key?(:'import_as_json')
73
85
  self.import_as_json = attributes[:'import_as_json']
74
86
  end
@@ -86,6 +98,10 @@ module Akeyless
86
98
  if attributes.key?(:'url')
87
99
  self.url = attributes[:'url']
88
100
  end
101
+
102
+ if attributes.key?(:'usc_name')
103
+ self.usc_name = attributes[:'usc_name']
104
+ end
89
105
  end
90
106
 
91
107
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -108,10 +124,12 @@ module Akeyless
108
124
  def ==(o)
109
125
  return true if self.equal?(o)
110
126
  self.class == o.class &&
127
+ delete_sync_on_deletion == o.delete_sync_on_deletion &&
111
128
  import_as_json == o.import_as_json &&
112
129
  namespaces == o.namespaces &&
113
130
  token == o.token &&
114
- url == o.url
131
+ url == o.url &&
132
+ usc_name == o.usc_name
115
133
  end
116
134
 
117
135
  # @see the `==` method
@@ -123,7 +141,7 @@ module Akeyless
123
141
  # Calculates hash code according to all attributes.
124
142
  # @return [Integer] Hash code
125
143
  def hash
126
- [import_as_json, namespaces, token, url].hash
144
+ [delete_sync_on_deletion, import_as_json, namespaces, token, url, usc_name].hash
127
145
  end
128
146
 
129
147
  # Builds the object from hash
@@ -0,0 +1,251 @@
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
+ # HTTPChallengeInfo contains HTTP-01 challenge details for user display
18
+ class HTTPChallengeInfo
19
+ attr_accessor :file_content
20
+
21
+ attr_accessor :file_path
22
+
23
+ attr_accessor :instructions
24
+
25
+ attr_accessor :key_auth
26
+
27
+ attr_accessor :token
28
+
29
+ # Attribute mapping from ruby-style variable name to JSON key.
30
+ def self.attribute_map
31
+ {
32
+ :'file_content' => :'file_content',
33
+ :'file_path' => :'file_path',
34
+ :'instructions' => :'instructions',
35
+ :'key_auth' => :'key_auth',
36
+ :'token' => :'token'
37
+ }
38
+ end
39
+
40
+ # Returns all the JSON keys this model knows about
41
+ def self.acceptable_attributes
42
+ attribute_map.values
43
+ end
44
+
45
+ # Attribute type mapping.
46
+ def self.openapi_types
47
+ {
48
+ :'file_content' => :'String',
49
+ :'file_path' => :'String',
50
+ :'instructions' => :'String',
51
+ :'key_auth' => :'String',
52
+ :'token' => :'String'
53
+ }
54
+ end
55
+
56
+ # List of attributes with nullable: true
57
+ def self.openapi_nullable
58
+ Set.new([
59
+ ])
60
+ end
61
+
62
+ # Initializes the object
63
+ # @param [Hash] attributes Model attributes in the form of hash
64
+ def initialize(attributes = {})
65
+ if (!attributes.is_a?(Hash))
66
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Akeyless::HTTPChallengeInfo` initialize method"
67
+ end
68
+
69
+ # check to see if the attribute exists and convert string to symbol for hash key
70
+ attributes = attributes.each_with_object({}) { |(k, v), h|
71
+ if (!self.class.attribute_map.key?(k.to_sym))
72
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Akeyless::HTTPChallengeInfo`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
73
+ end
74
+ h[k.to_sym] = v
75
+ }
76
+
77
+ if attributes.key?(:'file_content')
78
+ self.file_content = attributes[:'file_content']
79
+ end
80
+
81
+ if attributes.key?(:'file_path')
82
+ self.file_path = attributes[:'file_path']
83
+ end
84
+
85
+ if attributes.key?(:'instructions')
86
+ self.instructions = attributes[:'instructions']
87
+ end
88
+
89
+ if attributes.key?(:'key_auth')
90
+ self.key_auth = attributes[:'key_auth']
91
+ end
92
+
93
+ if attributes.key?(:'token')
94
+ self.token = attributes[:'token']
95
+ end
96
+ end
97
+
98
+ # Show invalid properties with the reasons. Usually used together with valid?
99
+ # @return Array for valid properties with the reasons
100
+ def list_invalid_properties
101
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
102
+ invalid_properties = Array.new
103
+ invalid_properties
104
+ end
105
+
106
+ # Check to see if the all the properties in the model are valid
107
+ # @return true if the model is valid
108
+ def valid?
109
+ warn '[DEPRECATED] the `valid?` method is obsolete'
110
+ true
111
+ end
112
+
113
+ # Checks equality by comparing each attribute.
114
+ # @param [Object] Object to be compared
115
+ def ==(o)
116
+ return true if self.equal?(o)
117
+ self.class == o.class &&
118
+ file_content == o.file_content &&
119
+ file_path == o.file_path &&
120
+ instructions == o.instructions &&
121
+ key_auth == o.key_auth &&
122
+ token == o.token
123
+ end
124
+
125
+ # @see the `==` method
126
+ # @param [Object] Object to be compared
127
+ def eql?(o)
128
+ self == o
129
+ end
130
+
131
+ # Calculates hash code according to all attributes.
132
+ # @return [Integer] Hash code
133
+ def hash
134
+ [file_content, file_path, instructions, key_auth, token].hash
135
+ end
136
+
137
+ # Builds the object from hash
138
+ # @param [Hash] attributes Model attributes in the form of hash
139
+ # @return [Object] Returns the model itself
140
+ def self.build_from_hash(attributes)
141
+ return nil unless attributes.is_a?(Hash)
142
+ attributes = attributes.transform_keys(&:to_sym)
143
+ transformed_hash = {}
144
+ openapi_types.each_pair do |key, type|
145
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
146
+ transformed_hash["#{key}"] = nil
147
+ elsif type =~ /\AArray<(.*)>/i
148
+ # check to ensure the input is an array given that the attribute
149
+ # is documented as an array but the input is not
150
+ if attributes[attribute_map[key]].is_a?(Array)
151
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
152
+ end
153
+ elsif !attributes[attribute_map[key]].nil?
154
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
155
+ end
156
+ end
157
+ new(transformed_hash)
158
+ end
159
+
160
+ # Deserializes the data based on type
161
+ # @param string type Data type
162
+ # @param string value Value to be deserialized
163
+ # @return [Object] Deserialized data
164
+ def self._deserialize(type, value)
165
+ case type.to_sym
166
+ when :Time
167
+ Time.parse(value)
168
+ when :Date
169
+ Date.parse(value)
170
+ when :String
171
+ value.to_s
172
+ when :Integer
173
+ value.to_i
174
+ when :Float
175
+ value.to_f
176
+ when :Boolean
177
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
178
+ true
179
+ else
180
+ false
181
+ end
182
+ when :Object
183
+ # generic object (usually a Hash), return directly
184
+ value
185
+ when /\AArray<(?<inner_type>.+)>\z/
186
+ inner_type = Regexp.last_match[:inner_type]
187
+ value.map { |v| _deserialize(inner_type, v) }
188
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
189
+ k_type = Regexp.last_match[:k_type]
190
+ v_type = Regexp.last_match[:v_type]
191
+ {}.tap do |hash|
192
+ value.each do |k, v|
193
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
194
+ end
195
+ end
196
+ else # model
197
+ # models (e.g. Pet) or oneOf
198
+ klass = Akeyless.const_get(type)
199
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
200
+ end
201
+ end
202
+
203
+ # Returns the string representation of the object
204
+ # @return [String] String presentation of the object
205
+ def to_s
206
+ to_hash.to_s
207
+ end
208
+
209
+ # to_body is an alias to to_hash (backward compatibility)
210
+ # @return [Hash] Returns the object in the form of hash
211
+ def to_body
212
+ to_hash
213
+ end
214
+
215
+ # Returns the object in the form of hash
216
+ # @return [Hash] Returns the object in the form of hash
217
+ def to_hash
218
+ hash = {}
219
+ self.class.attribute_map.each_pair do |attr, param|
220
+ value = self.send(attr)
221
+ if value.nil?
222
+ is_nullable = self.class.openapi_nullable.include?(attr)
223
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
224
+ end
225
+
226
+ hash[param] = _to_hash(value)
227
+ end
228
+ hash
229
+ end
230
+
231
+ # Outputs non-array value in the form of hash
232
+ # For object, use to_hash. Otherwise, just return the value
233
+ # @param [Object] value Any valid value
234
+ # @return [Hash] Returns the value in the form of hash
235
+ def _to_hash(value)
236
+ if value.is_a?(Array)
237
+ value.compact.map { |v| _to_hash(v) }
238
+ elsif value.is_a?(Hash)
239
+ {}.tap do |hash|
240
+ value.each { |k, v| hash[k] = _to_hash(v) }
241
+ end
242
+ elsif value.respond_to? :to_hash
243
+ value.to_hash
244
+ else
245
+ value
246
+ end
247
+ end
248
+
249
+ end
250
+
251
+ end