ionoscloud 5.1.1 → 6.0.0.beta.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (536) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +9 -19
  3. data/docs/CHANGELOG.md +1 -0
  4. data/docs/README.md +4 -4
  5. data/docs/api/BackupUnitsApi.md +594 -0
  6. data/docs/api/ContractResourcesApi.md +89 -0
  7. data/docs/api/DataCentersApi.md +516 -0
  8. data/docs/api/DefaultApi.md +8 -19
  9. data/docs/api/FirewallRulesApi.md +552 -0
  10. data/docs/api/FlowLogsApi.md +540 -0
  11. data/docs/api/IPBlocksApi.md +50 -51
  12. data/docs/api/ImagesApi.md +428 -0
  13. data/docs/api/KubernetesApi.md +131 -211
  14. data/docs/api/LabelsApi.md +2338 -0
  15. data/docs/api/LansApi.md +794 -0
  16. data/docs/api/LoadBalancersApi.md +877 -0
  17. data/docs/api/LocationsApi.md +259 -0
  18. data/docs/api/NATGatewaysApi.md +1574 -0
  19. data/docs/api/NetworkInterfacesApi.md +540 -0
  20. data/docs/api/NetworkLoadBalancersApi.md +1586 -0
  21. data/docs/api/PrivateCrossConnectsApi.md +426 -0
  22. data/docs/api/{RequestApi.md → RequestsApi.md} +36 -36
  23. data/docs/api/ServersApi.md +1908 -0
  24. data/docs/api/SnapshotsApi.md +428 -0
  25. data/docs/api/TemplatesApi.md +165 -0
  26. data/docs/api/UserManagementApi.md +173 -687
  27. data/docs/api/UserS3KeysApi.md +516 -0
  28. data/docs/api/VolumesApi.md +709 -0
  29. data/docs/models/AttachedVolumes.md +1 -1
  30. data/docs/models/Cdroms.md +1 -1
  31. data/docs/models/Contracts.md +24 -0
  32. data/docs/models/CpuArchitectureProperties.md +24 -0
  33. data/docs/models/DataCenterEntities.md +5 -1
  34. data/docs/models/DatacenterProperties.md +3 -1
  35. data/docs/models/FirewallruleProperties.md +3 -1
  36. data/docs/models/FlowLog.md +26 -0
  37. data/docs/models/FlowLogProperties.md +24 -0
  38. data/docs/models/FlowLogPut.md +24 -0
  39. data/docs/models/FlowLogs.md +30 -0
  40. data/docs/models/Group.md +1 -1
  41. data/docs/models/GroupMembers.md +1 -1
  42. data/docs/models/GroupProperties.md +7 -1
  43. data/docs/models/GroupShare.md +1 -1
  44. data/docs/models/GroupShares.md +1 -1
  45. data/docs/models/GroupUsers.md +1 -1
  46. data/docs/models/Groups.md +1 -1
  47. data/docs/models/KubernetesAutoScaling.md +2 -2
  48. data/docs/models/KubernetesClusterProperties.md +1 -1
  49. data/docs/models/KubernetesClusterPropertiesForPost.md +1 -1
  50. data/docs/models/KubernetesClusterPropertiesForPut.md +1 -1
  51. data/docs/models/KubernetesClusters.md +1 -1
  52. data/docs/models/KubernetesMaintenanceWindow.md +2 -2
  53. data/docs/models/KubernetesNodePoolLan.md +5 -1
  54. data/docs/models/KubernetesNodePoolLanRoutes.md +20 -0
  55. data/docs/models/KubernetesNodePools.md +1 -1
  56. data/docs/models/Lans.md +1 -1
  57. data/docs/models/LocationProperties.md +3 -1
  58. data/docs/models/NatGateway.md +28 -0
  59. data/docs/models/NatGatewayEntities.md +20 -0
  60. data/docs/models/NatGatewayLanProperties.md +20 -0
  61. data/docs/models/NatGatewayProperties.md +22 -0
  62. data/docs/models/NatGatewayPut.md +24 -0
  63. data/docs/models/NatGatewayRule.md +26 -0
  64. data/docs/models/NatGatewayRuleProperties.md +30 -0
  65. data/docs/models/NatGatewayRuleProtocol.md +15 -0
  66. data/docs/models/NatGatewayRulePut.md +24 -0
  67. data/docs/models/NatGatewayRuleType.md +15 -0
  68. data/docs/models/NatGatewayRules.md +24 -0
  69. data/docs/models/NatGateways.md +30 -0
  70. data/docs/models/NetworkLoadBalancer.md +28 -0
  71. data/docs/models/NetworkLoadBalancerEntities.md +20 -0
  72. data/docs/models/NetworkLoadBalancerForwardingRule.md +26 -0
  73. data/docs/models/NetworkLoadBalancerForwardingRuleHealthCheck.md +24 -0
  74. data/docs/models/NetworkLoadBalancerForwardingRuleProperties.md +30 -0
  75. data/docs/models/NetworkLoadBalancerForwardingRulePut.md +24 -0
  76. data/docs/models/NetworkLoadBalancerForwardingRuleTarget.md +24 -0
  77. data/docs/models/NetworkLoadBalancerForwardingRuleTargetHealthCheck.md +22 -0
  78. data/docs/models/NetworkLoadBalancerForwardingRules.md +30 -0
  79. data/docs/models/NetworkLoadBalancerProperties.md +26 -0
  80. data/docs/models/NetworkLoadBalancerPut.md +24 -0
  81. data/docs/models/NetworkLoadBalancers.md +30 -0
  82. data/docs/models/NicEntities.md +2 -0
  83. data/docs/models/NicProperties.md +6 -2
  84. data/docs/models/NicPut.md +24 -0
  85. data/docs/models/Nics.md +1 -1
  86. data/docs/models/PrivateCrossConnectProperties.md +1 -1
  87. data/docs/models/RemoteConsoleUrl.md +18 -0
  88. data/docs/models/Resource.md +1 -1
  89. data/docs/models/ResourceGroups.md +1 -1
  90. data/docs/models/ResourceLimits.md +11 -1
  91. data/docs/models/ResourceProperties.md +1 -1
  92. data/docs/models/Resources.md +1 -1
  93. data/docs/models/ResourcesUsers.md +1 -1
  94. data/docs/models/S3Bucket.md +1 -1
  95. data/docs/models/S3Key.md +1 -1
  96. data/docs/models/S3Keys.md +1 -1
  97. data/docs/models/ServerProperties.md +6 -2
  98. data/docs/models/TargetPortRange.md +20 -0
  99. data/docs/models/Template.md +26 -0
  100. data/docs/models/TemplateProperties.md +24 -0
  101. data/docs/models/Templates.md +24 -0
  102. data/docs/models/Token.md +18 -0
  103. data/docs/models/VolumeProperties.md +5 -3
  104. data/docs/summary.md +386 -159
  105. data/ionoscloud.gemspec +3 -3
  106. data/lib/ionoscloud/api/_api.rb +9 -9
  107. data/lib/ionoscloud/api/{backup_unit_api.rb → backup_units_api.rb} +101 -101
  108. data/lib/ionoscloud/api/contract_resources_api.rb +96 -0
  109. data/lib/ionoscloud/api/data_centers_api.rb +532 -0
  110. data/lib/ionoscloud/api/firewall_rules_api.rb +640 -0
  111. data/lib/ionoscloud/api/flow_logs_api.rb +622 -0
  112. data/lib/ionoscloud/api/{image_api.rb → images_api.rb} +71 -71
  113. data/lib/ionoscloud/api/ip_blocks_api.rb +55 -55
  114. data/lib/ionoscloud/api/kubernetes_api.rb +131 -194
  115. data/lib/ionoscloud/api/{label_api.rb → labels_api.rb} +416 -470
  116. data/lib/ionoscloud/api/{lan_api.rb → lans_api.rb} +178 -178
  117. data/lib/ionoscloud/api/{load_balancer_api.rb → load_balancers_api.rb} +198 -216
  118. data/lib/ionoscloud/api/{location_api.rb → locations_api.rb} +49 -49
  119. data/lib/ionoscloud/api/nat_gateways_api.rb +1672 -0
  120. data/lib/ionoscloud/api/network_interfaces_api.rb +604 -0
  121. data/lib/ionoscloud/api/network_load_balancers_api.rb +1690 -0
  122. data/lib/ionoscloud/api/{private_cross_connect_api.rb → private_cross_connects_api.rb} +76 -76
  123. data/lib/ionoscloud/api/{request_api.rb → requests_api.rb} +45 -45
  124. data/lib/ionoscloud/api/servers_api.rb +2023 -0
  125. data/lib/ionoscloud/api/{snapshot_api.rb → snapshots_api.rb} +77 -77
  126. data/lib/ionoscloud/api/templates_api.rb +164 -0
  127. data/lib/ionoscloud/api/user_management_api.rb +172 -667
  128. data/lib/ionoscloud/api/user_s3_keys_api.rb +517 -0
  129. data/lib/ionoscloud/api/{volume_api.rb → volumes_api.rb} +145 -145
  130. data/lib/ionoscloud/api_client.rb +5 -5
  131. data/lib/ionoscloud/api_error.rb +2 -2
  132. data/lib/ionoscloud/configuration.rb +4 -4
  133. data/lib/ionoscloud/models/attached_volumes.rb +2 -2
  134. data/lib/ionoscloud/models/backup_unit.rb +2 -2
  135. data/lib/ionoscloud/models/backup_unit_properties.rb +2 -2
  136. data/lib/ionoscloud/models/backup_unit_sso.rb +2 -2
  137. data/lib/ionoscloud/models/backup_units.rb +2 -2
  138. data/lib/ionoscloud/models/balanced_nics.rb +2 -2
  139. data/lib/ionoscloud/models/cdroms.rb +2 -2
  140. data/lib/ionoscloud/models/connectable_datacenter.rb +2 -2
  141. data/lib/ionoscloud/models/contract.rb +2 -2
  142. data/lib/ionoscloud/models/contract_properties.rb +2 -2
  143. data/lib/ionoscloud/models/contracts.rb +251 -0
  144. data/lib/ionoscloud/models/cpu_architecture_properties.rb +249 -0
  145. data/lib/ionoscloud/models/data_center_entities.rb +24 -6
  146. data/lib/ionoscloud/models/datacenter.rb +2 -2
  147. data/lib/ionoscloud/models/datacenter_element_metadata.rb +4 -4
  148. data/lib/ionoscloud/models/datacenter_properties.rb +18 -6
  149. data/lib/ionoscloud/models/datacenters.rb +2 -2
  150. data/lib/ionoscloud/models/error.rb +2 -2
  151. data/lib/ionoscloud/models/error_message.rb +2 -2
  152. data/lib/ionoscloud/models/firewall_rule.rb +2 -2
  153. data/lib/ionoscloud/models/firewall_rules.rb +2 -2
  154. data/lib/ionoscloud/models/firewallrule_properties.rb +28 -6
  155. data/lib/ionoscloud/models/flow_log.rb +262 -0
  156. data/lib/ionoscloud/models/flow_log_properties.rb +315 -0
  157. data/lib/ionoscloud/models/{kubernetes_config.rb → flow_log_put.rb} +9 -43
  158. data/lib/ionoscloud/models/flow_logs.rb +280 -0
  159. data/lib/ionoscloud/models/group.rb +2 -2
  160. data/lib/ionoscloud/models/group_entities.rb +2 -2
  161. data/lib/ionoscloud/models/group_members.rb +2 -2
  162. data/lib/ionoscloud/models/group_properties.rb +36 -6
  163. data/lib/ionoscloud/models/group_share.rb +2 -2
  164. data/lib/ionoscloud/models/group_share_properties.rb +2 -2
  165. data/lib/ionoscloud/models/group_shares.rb +2 -2
  166. data/lib/ionoscloud/models/group_users.rb +2 -2
  167. data/lib/ionoscloud/models/groups.rb +2 -2
  168. data/lib/ionoscloud/models/image.rb +2 -2
  169. data/lib/ionoscloud/models/image_properties.rb +2 -2
  170. data/lib/ionoscloud/models/images.rb +2 -2
  171. data/lib/ionoscloud/models/info.rb +2 -2
  172. data/lib/ionoscloud/models/ip_block.rb +2 -2
  173. data/lib/ionoscloud/models/ip_block_properties.rb +2 -2
  174. data/lib/ionoscloud/models/ip_blocks.rb +2 -2
  175. data/lib/ionoscloud/models/ip_consumer.rb +2 -2
  176. data/lib/ionoscloud/models/ip_failover.rb +2 -2
  177. data/lib/ionoscloud/models/kubernetes_auto_scaling.rb +12 -2
  178. data/lib/ionoscloud/models/kubernetes_cluster.rb +2 -2
  179. data/lib/ionoscloud/models/kubernetes_cluster_entities.rb +2 -2
  180. data/lib/ionoscloud/models/kubernetes_cluster_for_post.rb +2 -2
  181. data/lib/ionoscloud/models/kubernetes_cluster_for_put.rb +2 -2
  182. data/lib/ionoscloud/models/kubernetes_cluster_properties.rb +3 -3
  183. data/lib/ionoscloud/models/kubernetes_cluster_properties_for_post.rb +3 -3
  184. data/lib/ionoscloud/models/kubernetes_cluster_properties_for_put.rb +3 -3
  185. data/lib/ionoscloud/models/kubernetes_clusters.rb +3 -3
  186. data/lib/ionoscloud/models/kubernetes_maintenance_window.rb +12 -2
  187. data/lib/ionoscloud/models/kubernetes_node.rb +2 -2
  188. data/lib/ionoscloud/models/kubernetes_node_metadata.rb +4 -4
  189. data/lib/ionoscloud/models/kubernetes_node_pool.rb +2 -2
  190. data/lib/ionoscloud/models/kubernetes_node_pool_for_post.rb +2 -2
  191. data/lib/ionoscloud/models/kubernetes_node_pool_for_put.rb +2 -2
  192. data/lib/ionoscloud/models/kubernetes_node_pool_lan.rb +28 -6
  193. data/lib/ionoscloud/models/kubernetes_node_pool_lan_routes.rb +229 -0
  194. data/lib/ionoscloud/models/kubernetes_node_pool_properties.rb +2 -2
  195. data/lib/ionoscloud/models/kubernetes_node_pool_properties_for_post.rb +2 -2
  196. data/lib/ionoscloud/models/kubernetes_node_pool_properties_for_put.rb +2 -2
  197. data/lib/ionoscloud/models/kubernetes_node_pools.rb +3 -3
  198. data/lib/ionoscloud/models/kubernetes_node_properties.rb +2 -2
  199. data/lib/ionoscloud/models/kubernetes_nodes.rb +2 -2
  200. data/lib/ionoscloud/models/label.rb +2 -2
  201. data/lib/ionoscloud/models/label_properties.rb +2 -2
  202. data/lib/ionoscloud/models/label_resource.rb +2 -2
  203. data/lib/ionoscloud/models/label_resource_properties.rb +2 -2
  204. data/lib/ionoscloud/models/label_resources.rb +2 -2
  205. data/lib/ionoscloud/models/labels.rb +2 -2
  206. data/lib/ionoscloud/models/lan.rb +2 -2
  207. data/lib/ionoscloud/models/lan_entities.rb +2 -2
  208. data/lib/ionoscloud/models/lan_nics.rb +2 -2
  209. data/lib/ionoscloud/models/lan_post.rb +2 -2
  210. data/lib/ionoscloud/models/lan_properties.rb +2 -2
  211. data/lib/ionoscloud/models/lan_properties_post.rb +2 -2
  212. data/lib/ionoscloud/models/lans.rb +3 -3
  213. data/lib/ionoscloud/models/loadbalancer.rb +2 -2
  214. data/lib/ionoscloud/models/loadbalancer_entities.rb +2 -2
  215. data/lib/ionoscloud/models/loadbalancer_properties.rb +2 -2
  216. data/lib/ionoscloud/models/loadbalancers.rb +2 -2
  217. data/lib/ionoscloud/models/location.rb +2 -2
  218. data/lib/ionoscloud/models/location_properties.rb +18 -6
  219. data/lib/ionoscloud/models/locations.rb +2 -2
  220. data/lib/ionoscloud/models/nat_gateway.rb +271 -0
  221. data/lib/ionoscloud/models/nat_gateway_entities.rb +227 -0
  222. data/lib/ionoscloud/models/nat_gateway_lan_properties.rb +236 -0
  223. data/lib/ionoscloud/models/nat_gateway_properties.rb +253 -0
  224. data/lib/ionoscloud/models/nat_gateway_put.rb +253 -0
  225. data/lib/ionoscloud/models/nat_gateway_rule.rb +262 -0
  226. data/lib/ionoscloud/models/nat_gateway_rule_properties.rb +293 -0
  227. data/lib/ionoscloud/models/nat_gateway_rule_protocol.rb +39 -0
  228. data/lib/ionoscloud/models/nat_gateway_rule_put.rb +253 -0
  229. data/lib/ionoscloud/models/nat_gateway_rule_type.rb +36 -0
  230. data/lib/ionoscloud/models/nat_gateway_rules.rb +251 -0
  231. data/lib/ionoscloud/models/nat_gateways.rb +280 -0
  232. data/lib/ionoscloud/models/network_load_balancer.rb +271 -0
  233. data/lib/ionoscloud/models/network_load_balancer_entities.rb +227 -0
  234. data/lib/ionoscloud/models/network_load_balancer_forwarding_rule.rb +262 -0
  235. data/lib/ionoscloud/models/network_load_balancer_forwarding_rule_health_check.rb +249 -0
  236. data/lib/ionoscloud/models/network_load_balancer_forwarding_rule_properties.rb +356 -0
  237. data/lib/ionoscloud/models/network_load_balancer_forwarding_rule_put.rb +253 -0
  238. data/lib/ionoscloud/models/network_load_balancer_forwarding_rule_target.rb +263 -0
  239. data/lib/ionoscloud/models/network_load_balancer_forwarding_rule_target_health_check.rb +239 -0
  240. data/lib/ionoscloud/models/network_load_balancer_forwarding_rules.rb +280 -0
  241. data/lib/ionoscloud/models/network_load_balancer_properties.rb +278 -0
  242. data/lib/ionoscloud/models/network_load_balancer_put.rb +253 -0
  243. data/lib/ionoscloud/models/network_load_balancers.rb +280 -0
  244. data/lib/ionoscloud/models/nic.rb +2 -2
  245. data/lib/ionoscloud/models/nic_entities.rb +12 -3
  246. data/lib/ionoscloud/models/nic_properties.rb +64 -10
  247. data/lib/ionoscloud/models/nic_put.rb +253 -0
  248. data/lib/ionoscloud/models/nics.rb +2 -2
  249. data/lib/ionoscloud/models/no_state_meta_data.rb +2 -2
  250. data/lib/ionoscloud/models/pagination_links.rb +2 -2
  251. data/lib/ionoscloud/models/peer.rb +2 -2
  252. data/lib/ionoscloud/models/private_cross_connect.rb +2 -2
  253. data/lib/ionoscloud/models/private_cross_connect_properties.rb +3 -3
  254. data/lib/ionoscloud/models/private_cross_connects.rb +2 -2
  255. data/lib/ionoscloud/models/{kubernetes_config_properties.rb → remote_console_url.rb} +13 -13
  256. data/lib/ionoscloud/models/request.rb +2 -2
  257. data/lib/ionoscloud/models/request_metadata.rb +2 -2
  258. data/lib/ionoscloud/models/request_properties.rb +2 -2
  259. data/lib/ionoscloud/models/request_status.rb +2 -2
  260. data/lib/ionoscloud/models/request_status_metadata.rb +2 -2
  261. data/lib/ionoscloud/models/request_target.rb +2 -2
  262. data/lib/ionoscloud/models/requests.rb +2 -2
  263. data/lib/ionoscloud/models/resource.rb +2 -2
  264. data/lib/ionoscloud/models/resource_entities.rb +2 -2
  265. data/lib/ionoscloud/models/resource_groups.rb +2 -2
  266. data/lib/ionoscloud/models/resource_limits.rb +81 -6
  267. data/lib/ionoscloud/models/resource_properties.rb +3 -3
  268. data/lib/ionoscloud/models/resource_reference.rb +2 -2
  269. data/lib/ionoscloud/models/resources.rb +2 -2
  270. data/lib/ionoscloud/models/resources_users.rb +2 -2
  271. data/lib/ionoscloud/models/s3_bucket.rb +3 -3
  272. data/lib/ionoscloud/models/s3_key.rb +2 -2
  273. data/lib/ionoscloud/models/s3_key_metadata.rb +2 -2
  274. data/lib/ionoscloud/models/s3_key_properties.rb +2 -2
  275. data/lib/ionoscloud/models/s3_keys.rb +2 -2
  276. data/lib/ionoscloud/models/s3_object_storage_sso.rb +2 -2
  277. data/lib/ionoscloud/models/server.rb +2 -2
  278. data/lib/ionoscloud/models/server_entities.rb +2 -2
  279. data/lib/ionoscloud/models/server_properties.rb +27 -7
  280. data/lib/ionoscloud/models/servers.rb +2 -2
  281. data/lib/ionoscloud/models/snapshot.rb +2 -2
  282. data/lib/ionoscloud/models/snapshot_properties.rb +2 -2
  283. data/lib/ionoscloud/models/snapshots.rb +2 -2
  284. data/lib/ionoscloud/models/target_port_range.rb +229 -0
  285. data/lib/ionoscloud/models/template.rb +262 -0
  286. data/lib/ionoscloud/models/template_properties.rb +269 -0
  287. data/lib/ionoscloud/models/templates.rb +251 -0
  288. data/lib/ionoscloud/models/token.rb +219 -0
  289. data/lib/ionoscloud/models/type.rb +10 -2
  290. data/lib/ionoscloud/models/user.rb +2 -2
  291. data/lib/ionoscloud/models/user_metadata.rb +2 -2
  292. data/lib/ionoscloud/models/user_post.rb +2 -2
  293. data/lib/ionoscloud/models/user_properties.rb +2 -2
  294. data/lib/ionoscloud/models/user_properties_post.rb +2 -2
  295. data/lib/ionoscloud/models/user_properties_put.rb +2 -2
  296. data/lib/ionoscloud/models/user_put.rb +2 -2
  297. data/lib/ionoscloud/models/users.rb +2 -2
  298. data/lib/ionoscloud/models/users_entities.rb +2 -2
  299. data/lib/ionoscloud/models/volume.rb +2 -2
  300. data/lib/ionoscloud/models/volume_properties.rb +16 -6
  301. data/lib/ionoscloud/models/volumes.rb +2 -2
  302. data/lib/ionoscloud/version.rb +3 -3
  303. data/lib/ionoscloud.rb +60 -18
  304. data/spec/api/_api_spec.rb +5 -5
  305. data/spec/api/backup_units_api_spec.rb +140 -0
  306. data/spec/api/contract_resources_api_spec.rb +49 -0
  307. data/spec/api/data_centers_api_spec.rb +128 -0
  308. data/spec/api/firewall_rules_api_spec.rb +146 -0
  309. data/spec/api/flow_logs_api_spec.rb +140 -0
  310. data/spec/api/images_api_spec.rb +111 -0
  311. data/spec/api/ip_blocks_api_spec.rb +27 -27
  312. data/spec/api/kubernetes_api_spec.rb +55 -67
  313. data/spec/api/labels_api_spec.rb +474 -0
  314. data/spec/api/lans_api_spec.rb +186 -0
  315. data/spec/api/load_balancers_api_spec.rb +201 -0
  316. data/spec/api/locations_api_spec.rb +80 -0
  317. data/spec/api/nat_gateways_api_spec.rb +334 -0
  318. data/spec/api/network_interfaces_api_spec.rb +140 -0
  319. data/spec/api/network_load_balancers_api_spec.rb +340 -0
  320. data/spec/api/private_cross_connects_api_spec.rb +110 -0
  321. data/spec/api/{request_api_spec.rb → requests_api_spec.rb} +19 -19
  322. data/spec/api/servers_api_spec.rb +401 -0
  323. data/spec/api/snapshots_api_spec.rb +111 -0
  324. data/spec/api/templates_api_spec.rb +60 -0
  325. data/spec/api/user_management_api_spec.rb +81 -174
  326. data/spec/api/user_s3_keys_api_spec.rb +128 -0
  327. data/spec/api/volumes_api_spec.rb +171 -0
  328. data/spec/api_client_spec.rb +2 -2
  329. data/spec/configuration_spec.rb +5 -5
  330. data/spec/models/attached_volumes_spec.rb +2 -2
  331. data/spec/models/backup_unit_properties_spec.rb +2 -2
  332. data/spec/models/backup_unit_spec.rb +2 -2
  333. data/spec/models/backup_unit_sso_spec.rb +2 -2
  334. data/spec/models/backup_units_spec.rb +2 -2
  335. data/spec/models/balanced_nics_spec.rb +2 -2
  336. data/spec/models/cdroms_spec.rb +2 -2
  337. data/spec/models/connectable_datacenter_spec.rb +2 -2
  338. data/spec/models/contract_properties_spec.rb +2 -2
  339. data/spec/models/contract_spec.rb +2 -2
  340. data/spec/models/contracts_spec.rb +52 -0
  341. data/spec/models/cpu_architecture_properties_spec.rb +52 -0
  342. data/spec/models/data_center_entities_spec.rb +14 -2
  343. data/spec/models/datacenter_element_metadata_spec.rb +3 -3
  344. data/spec/models/datacenter_properties_spec.rb +8 -2
  345. data/spec/models/datacenter_spec.rb +2 -2
  346. data/spec/models/datacenters_spec.rb +2 -2
  347. data/spec/models/error_message_spec.rb +2 -2
  348. data/spec/models/error_spec.rb +2 -2
  349. data/spec/models/firewall_rule_spec.rb +2 -2
  350. data/spec/models/firewall_rules_spec.rb +2 -2
  351. data/spec/models/firewallrule_properties_spec.rb +12 -2
  352. data/spec/models/flow_log_properties_spec.rb +60 -0
  353. data/spec/models/flow_log_put_spec.rb +52 -0
  354. data/spec/models/flow_log_spec.rb +58 -0
  355. data/spec/models/flow_logs_spec.rb +70 -0
  356. data/spec/models/group_entities_spec.rb +2 -2
  357. data/spec/models/group_members_spec.rb +2 -2
  358. data/spec/models/group_properties_spec.rb +20 -2
  359. data/spec/models/group_share_properties_spec.rb +2 -2
  360. data/spec/models/group_share_spec.rb +2 -2
  361. data/spec/models/group_shares_spec.rb +2 -2
  362. data/spec/models/group_spec.rb +2 -2
  363. data/spec/models/group_users_spec.rb +2 -2
  364. data/spec/models/groups_spec.rb +2 -2
  365. data/spec/models/image_properties_spec.rb +2 -2
  366. data/spec/models/image_spec.rb +2 -2
  367. data/spec/models/images_spec.rb +2 -2
  368. data/spec/models/info_spec.rb +2 -2
  369. data/spec/models/ip_block_properties_spec.rb +2 -2
  370. data/spec/models/ip_block_spec.rb +2 -2
  371. data/spec/models/ip_blocks_spec.rb +2 -2
  372. data/spec/models/ip_consumer_spec.rb +2 -2
  373. data/spec/models/ip_failover_spec.rb +2 -2
  374. data/spec/models/kubernetes_auto_scaling_spec.rb +2 -2
  375. data/spec/models/kubernetes_cluster_entities_spec.rb +2 -2
  376. data/spec/models/kubernetes_cluster_for_post_spec.rb +2 -2
  377. data/spec/models/kubernetes_cluster_for_put_spec.rb +2 -2
  378. data/spec/models/kubernetes_cluster_properties_for_post_spec.rb +2 -2
  379. data/spec/models/kubernetes_cluster_properties_for_put_spec.rb +2 -2
  380. data/spec/models/kubernetes_cluster_properties_spec.rb +2 -2
  381. data/spec/models/kubernetes_cluster_spec.rb +2 -2
  382. data/spec/models/kubernetes_clusters_spec.rb +2 -2
  383. data/spec/models/kubernetes_maintenance_window_spec.rb +2 -2
  384. data/spec/models/kubernetes_node_metadata_spec.rb +3 -3
  385. data/spec/models/kubernetes_node_pool_for_post_spec.rb +2 -2
  386. data/spec/models/kubernetes_node_pool_for_put_spec.rb +2 -2
  387. data/spec/models/kubernetes_node_pool_lan_routes_spec.rb +40 -0
  388. data/spec/models/kubernetes_node_pool_lan_spec.rb +14 -2
  389. data/spec/models/kubernetes_node_pool_properties_for_post_spec.rb +2 -2
  390. data/spec/models/kubernetes_node_pool_properties_for_put_spec.rb +2 -2
  391. data/spec/models/kubernetes_node_pool_properties_spec.rb +2 -2
  392. data/spec/models/kubernetes_node_pool_spec.rb +2 -2
  393. data/spec/models/kubernetes_node_pools_spec.rb +2 -2
  394. data/spec/models/kubernetes_node_properties_spec.rb +2 -2
  395. data/spec/models/kubernetes_node_spec.rb +2 -2
  396. data/spec/models/kubernetes_nodes_spec.rb +2 -2
  397. data/spec/models/label_properties_spec.rb +2 -2
  398. data/spec/models/label_resource_properties_spec.rb +2 -2
  399. data/spec/models/label_resource_spec.rb +2 -2
  400. data/spec/models/label_resources_spec.rb +2 -2
  401. data/spec/models/label_spec.rb +2 -2
  402. data/spec/models/labels_spec.rb +2 -2
  403. data/spec/models/lan_entities_spec.rb +2 -2
  404. data/spec/models/lan_nics_spec.rb +2 -2
  405. data/spec/models/lan_post_spec.rb +2 -2
  406. data/spec/models/lan_properties_post_spec.rb +2 -2
  407. data/spec/models/lan_properties_spec.rb +2 -2
  408. data/spec/models/lan_spec.rb +2 -2
  409. data/spec/models/lans_spec.rb +2 -2
  410. data/spec/models/loadbalancer_entities_spec.rb +2 -2
  411. data/spec/models/loadbalancer_properties_spec.rb +2 -2
  412. data/spec/models/loadbalancer_spec.rb +2 -2
  413. data/spec/models/loadbalancers_spec.rb +2 -2
  414. data/spec/models/location_properties_spec.rb +8 -2
  415. data/spec/models/location_spec.rb +2 -2
  416. data/spec/models/locations_spec.rb +2 -2
  417. data/spec/models/nat_gateway_entities_spec.rb +40 -0
  418. data/spec/models/nat_gateway_lan_properties_spec.rb +40 -0
  419. data/spec/models/nat_gateway_properties_spec.rb +46 -0
  420. data/spec/models/nat_gateway_put_spec.rb +52 -0
  421. data/spec/models/nat_gateway_rule_properties_spec.rb +70 -0
  422. data/spec/models/nat_gateway_rule_protocol_spec.rb +28 -0
  423. data/spec/models/nat_gateway_rule_put_spec.rb +52 -0
  424. data/spec/models/nat_gateway_rule_spec.rb +58 -0
  425. data/spec/models/nat_gateway_rule_type_spec.rb +28 -0
  426. data/spec/models/nat_gateway_rules_spec.rb +52 -0
  427. data/spec/models/nat_gateway_spec.rb +64 -0
  428. data/spec/models/nat_gateways_spec.rb +70 -0
  429. data/spec/models/network_load_balancer_entities_spec.rb +40 -0
  430. data/spec/models/network_load_balancer_forwarding_rule_health_check_spec.rb +52 -0
  431. data/spec/models/network_load_balancer_forwarding_rule_properties_spec.rb +78 -0
  432. data/spec/models/network_load_balancer_forwarding_rule_put_spec.rb +52 -0
  433. data/spec/models/network_load_balancer_forwarding_rule_spec.rb +58 -0
  434. data/spec/models/network_load_balancer_forwarding_rule_target_health_check_spec.rb +46 -0
  435. data/spec/models/network_load_balancer_forwarding_rule_target_spec.rb +52 -0
  436. data/spec/models/network_load_balancer_forwarding_rules_spec.rb +70 -0
  437. data/spec/models/network_load_balancer_properties_spec.rb +58 -0
  438. data/spec/models/network_load_balancer_put_spec.rb +52 -0
  439. data/spec/models/network_load_balancer_spec.rb +64 -0
  440. data/spec/models/network_load_balancers_spec.rb +70 -0
  441. data/spec/models/nic_entities_spec.rb +8 -2
  442. data/spec/models/nic_properties_spec.rb +19 -3
  443. data/spec/models/nic_put_spec.rb +52 -0
  444. data/spec/models/nic_spec.rb +2 -2
  445. data/spec/models/nics_spec.rb +2 -2
  446. data/spec/models/no_state_meta_data_spec.rb +2 -2
  447. data/spec/models/pagination_links_spec.rb +2 -2
  448. data/spec/models/peer_spec.rb +2 -2
  449. data/spec/models/private_cross_connect_properties_spec.rb +2 -2
  450. data/spec/models/private_cross_connect_spec.rb +2 -2
  451. data/spec/models/private_cross_connects_spec.rb +2 -2
  452. data/spec/models/remote_console_url_spec.rb +34 -0
  453. data/spec/models/request_metadata_spec.rb +2 -2
  454. data/spec/models/request_properties_spec.rb +2 -2
  455. data/spec/models/request_spec.rb +2 -2
  456. data/spec/models/request_status_metadata_spec.rb +2 -2
  457. data/spec/models/request_status_spec.rb +2 -2
  458. data/spec/models/request_target_spec.rb +2 -2
  459. data/spec/models/requests_spec.rb +2 -2
  460. data/spec/models/resource_entities_spec.rb +2 -2
  461. data/spec/models/resource_groups_spec.rb +2 -2
  462. data/spec/models/resource_limits_spec.rb +32 -2
  463. data/spec/models/resource_properties_spec.rb +2 -2
  464. data/spec/models/resource_reference_spec.rb +2 -2
  465. data/spec/models/resource_spec.rb +2 -2
  466. data/spec/models/resources_spec.rb +2 -2
  467. data/spec/models/resources_users_spec.rb +2 -2
  468. data/spec/models/s3_bucket_spec.rb +2 -2
  469. data/spec/models/s3_key_metadata_spec.rb +2 -2
  470. data/spec/models/s3_key_properties_spec.rb +2 -2
  471. data/spec/models/s3_key_spec.rb +2 -2
  472. data/spec/models/s3_keys_spec.rb +2 -2
  473. data/spec/models/s3_object_storage_sso_spec.rb +2 -2
  474. data/spec/models/server_entities_spec.rb +2 -2
  475. data/spec/models/server_properties_spec.rb +14 -2
  476. data/spec/models/server_spec.rb +2 -2
  477. data/spec/models/servers_spec.rb +2 -2
  478. data/spec/models/snapshot_properties_spec.rb +2 -2
  479. data/spec/models/snapshot_spec.rb +2 -2
  480. data/spec/models/snapshots_spec.rb +2 -2
  481. data/spec/models/target_port_range_spec.rb +40 -0
  482. data/spec/models/template_properties_spec.rb +52 -0
  483. data/spec/models/template_spec.rb +58 -0
  484. data/spec/models/templates_spec.rb +52 -0
  485. data/spec/models/token_spec.rb +34 -0
  486. data/spec/models/type_spec.rb +2 -2
  487. data/spec/models/user_metadata_spec.rb +2 -2
  488. data/spec/models/user_post_spec.rb +2 -2
  489. data/spec/models/user_properties_post_spec.rb +2 -2
  490. data/spec/models/user_properties_put_spec.rb +2 -2
  491. data/spec/models/user_properties_spec.rb +2 -2
  492. data/spec/models/user_put_spec.rb +2 -2
  493. data/spec/models/user_spec.rb +2 -2
  494. data/spec/models/users_entities_spec.rb +2 -2
  495. data/spec/models/users_spec.rb +2 -2
  496. data/spec/models/volume_properties_spec.rb +8 -2
  497. data/spec/models/volume_spec.rb +2 -2
  498. data/spec/models/volumes_spec.rb +2 -2
  499. data/spec/spec_helper.rb +2 -2
  500. metadata +246 -80
  501. data/Gemfile.lock +0 -68
  502. data/docs/api/BackupUnitApi.md +0 -595
  503. data/docs/api/ContractApi.md +0 -89
  504. data/docs/api/DataCenterApi.md +0 -517
  505. data/docs/api/ImageApi.md +0 -429
  506. data/docs/api/LabelApi.md +0 -2355
  507. data/docs/api/LanApi.md +0 -795
  508. data/docs/api/LoadBalancerApi.md +0 -883
  509. data/docs/api/LocationApi.md +0 -259
  510. data/docs/api/NicApi.md +0 -1087
  511. data/docs/api/PrivateCrossConnectApi.md +0 -427
  512. data/docs/api/ServerApi.md +0 -1573
  513. data/docs/api/SnapshotApi.md +0 -429
  514. data/docs/api/VolumeApi.md +0 -711
  515. data/docs/models/KubernetesConfig.md +0 -24
  516. data/docs/models/KubernetesConfigProperties.md +0 -18
  517. data/lib/ionoscloud/api/contract_api.rb +0 -96
  518. data/lib/ionoscloud/api/data_center_api.rb +0 -532
  519. data/lib/ionoscloud/api/nic_api.rb +0 -1222
  520. data/lib/ionoscloud/api/server_api.rb +0 -1679
  521. data/lib/test_driver.rb +0 -104
  522. data/spec/api/backup_unit_api_spec.rb +0 -140
  523. data/spec/api/contract_api_spec.rb +0 -49
  524. data/spec/api/data_center_api_spec.rb +0 -128
  525. data/spec/api/image_api_spec.rb +0 -111
  526. data/spec/api/label_api_spec.rb +0 -480
  527. data/spec/api/lan_api_spec.rb +0 -186
  528. data/spec/api/load_balancer_api_spec.rb +0 -203
  529. data/spec/api/location_api_spec.rb +0 -80
  530. data/spec/api/nic_api_spec.rb +0 -251
  531. data/spec/api/private_cross_connect_api_spec.rb +0 -110
  532. data/spec/api/server_api_spec.rb +0 -337
  533. data/spec/api/snapshot_api_spec.rb +0 -111
  534. data/spec/api/volume_api_spec.rb +0 -171
  535. data/spec/models/kubernetes_config_properties_spec.rb +0 -34
  536. data/spec/models/kubernetes_config_spec.rb +0 -56
@@ -0,0 +1,249 @@
1
+ =begin
2
+ #CLOUD API
3
+
4
+ #IONOS Enterprise-grade Infrastructure as a Service (IaaS) solutions can be managed through the Cloud API, in addition or as an alternative to the \"Data Center Designer\" (DCD) browser-based tool. Both methods employ consistent concepts and features, deliver similar power and flexibility, and can be used to perform a multitude of management tasks, including adding servers, volumes, configuring networks, and so on.
5
+
6
+ The version of the OpenAPI document: 6.0-SDK.3
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.2.1-SNAPSHOT
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Ionoscloud
17
+ class CpuArchitectureProperties
18
+ # A valid CPU family name.
19
+ attr_accessor :cpu_family
20
+
21
+ # The maximum number of cores available.
22
+ attr_accessor :max_cores
23
+
24
+ # The maximum number of RAM in MB.
25
+ attr_accessor :max_ram
26
+
27
+ # A valid CPU vendor name.
28
+ attr_accessor :vendor
29
+
30
+ # Attribute mapping from ruby-style variable name to JSON key.
31
+ def self.attribute_map
32
+ {
33
+ :'cpu_family' => :'cpuFamily',
34
+ :'max_cores' => :'maxCores',
35
+ :'max_ram' => :'maxRam',
36
+ :'vendor' => :'vendor'
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
+ :'cpu_family' => :'String',
49
+ :'max_cores' => :'Integer',
50
+ :'max_ram' => :'Integer',
51
+ :'vendor' => :'String'
52
+ }
53
+ end
54
+
55
+ # List of attributes with nullable: true
56
+ def self.openapi_nullable
57
+ Set.new([
58
+ ])
59
+ end
60
+
61
+ # Initializes the object
62
+ # @param [Hash] attributes Model attributes in the form of hash
63
+ def initialize(attributes = {})
64
+ if (!attributes.is_a?(Hash))
65
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Ionoscloud::CpuArchitectureProperties` initialize method"
66
+ end
67
+
68
+ # check to see if the attribute exists and convert string to symbol for hash key
69
+ attributes = attributes.each_with_object({}) { |(k, v), h|
70
+ if (!self.class.attribute_map.key?(k.to_sym))
71
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Ionoscloud::CpuArchitectureProperties`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
72
+ end
73
+ h[k.to_sym] = v
74
+ }
75
+
76
+ if attributes.key?(:'cpu_family')
77
+ self.cpu_family = attributes[:'cpu_family']
78
+ end
79
+
80
+ if attributes.key?(:'max_cores')
81
+ self.max_cores = attributes[:'max_cores']
82
+ end
83
+
84
+ if attributes.key?(:'max_ram')
85
+ self.max_ram = attributes[:'max_ram']
86
+ end
87
+
88
+ if attributes.key?(:'vendor')
89
+ self.vendor = attributes[:'vendor']
90
+ end
91
+ end
92
+
93
+ # Show invalid properties with the reasons. Usually used together with valid?
94
+ # @return Array for valid properties with the reasons
95
+ def list_invalid_properties
96
+ invalid_properties = Array.new
97
+ invalid_properties
98
+ end
99
+
100
+ # Check to see if the all the properties in the model are valid
101
+ # @return true if the model is valid
102
+ def valid?
103
+ true
104
+ end
105
+
106
+ # Checks equality by comparing each attribute.
107
+ # @param [Object] Object to be compared
108
+ def ==(o)
109
+ return true if self.equal?(o)
110
+ self.class == o.class &&
111
+ cpu_family == o.cpu_family &&
112
+ max_cores == o.max_cores &&
113
+ max_ram == o.max_ram &&
114
+ vendor == o.vendor
115
+ end
116
+
117
+ # @see the `==` method
118
+ # @param [Object] Object to be compared
119
+ def eql?(o)
120
+ self == o
121
+ end
122
+
123
+ # Calculates hash code according to all attributes.
124
+ # @return [Integer] Hash code
125
+ def hash
126
+ [cpu_family, max_cores, max_ram, vendor].hash
127
+ end
128
+
129
+ # Builds the object from hash
130
+ # @param [Hash] attributes Model attributes in the form of hash
131
+ # @return [Object] Returns the model itself
132
+ def self.build_from_hash(attributes)
133
+ new.build_from_hash(attributes)
134
+ end
135
+
136
+ # Builds the object from hash
137
+ # @param [Hash] attributes Model attributes in the form of hash
138
+ # @return [Object] Returns the model itself
139
+ def build_from_hash(attributes)
140
+ return nil unless attributes.is_a?(Hash)
141
+ self.class.openapi_types.each_pair do |key, type|
142
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
143
+ self.send("#{key}=", nil)
144
+ elsif type =~ /\AArray<(.*)>/i
145
+ # check to ensure the input is an array given that the attribute
146
+ # is documented as an array but the input is not
147
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
148
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
149
+ end
150
+ elsif !attributes[self.class.attribute_map[key]].nil?
151
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
152
+ end
153
+ end
154
+
155
+ self
156
+ end
157
+
158
+ # Deserializes the data based on type
159
+ # @param string type Data type
160
+ # @param string value Value to be deserialized
161
+ # @return [Object] Deserialized data
162
+ def _deserialize(type, value)
163
+ case type.to_sym
164
+ when :Time
165
+ Time.parse(value)
166
+ when :Date
167
+ Date.parse(value)
168
+ when :String
169
+ value.to_s
170
+ when :Integer
171
+ value.to_i
172
+ when :Float
173
+ value.to_f
174
+ when :Boolean
175
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
176
+ true
177
+ else
178
+ false
179
+ end
180
+ when :Object
181
+ # generic object (usually a Hash), return directly
182
+ value
183
+ when /\AArray<(?<inner_type>.+)>\z/
184
+ inner_type = Regexp.last_match[:inner_type]
185
+ value.map { |v| _deserialize(inner_type, v) }
186
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
187
+ k_type = Regexp.last_match[:k_type]
188
+ v_type = Regexp.last_match[:v_type]
189
+ {}.tap do |hash|
190
+ value.each do |k, v|
191
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
192
+ end
193
+ end
194
+ else # model
195
+ # models (e.g. Pet) or oneOf
196
+ klass = Ionoscloud.const_get(type)
197
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
198
+ end
199
+ end
200
+
201
+ # Returns the string representation of the object
202
+ # @return [String] String presentation of the object
203
+ def to_s
204
+ to_hash.to_s
205
+ end
206
+
207
+ # to_body is an alias to to_hash (backward compatibility)
208
+ # @return [Hash] Returns the object in the form of hash
209
+ def to_body
210
+ to_hash
211
+ end
212
+
213
+ # Returns the object in the form of hash
214
+ # @return [Hash] Returns the object in the form of hash
215
+ def to_hash
216
+ hash = {}
217
+ self.class.attribute_map.each_pair do |attr, param|
218
+ value = self.send(attr)
219
+ if value.nil?
220
+ is_nullable = self.class.openapi_nullable.include?(attr)
221
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
222
+ end
223
+
224
+ hash[param] = _to_hash(value)
225
+ end
226
+ hash
227
+ end
228
+
229
+ # Outputs non-array value in the form of hash
230
+ # For object, use to_hash. Otherwise, just return the value
231
+ # @param [Object] value Any valid value
232
+ # @return [Hash] Returns the value in the form of hash
233
+ def _to_hash(value)
234
+ if value.is_a?(Array)
235
+ value.compact.map { |v| _to_hash(v) }
236
+ elsif value.is_a?(Hash)
237
+ {}.tap do |hash|
238
+ value.each { |k, v| hash[k] = _to_hash(v) }
239
+ end
240
+ elsif value.respond_to? :to_hash
241
+ value.to_hash
242
+ else
243
+ value
244
+ end
245
+ end
246
+
247
+ end
248
+
249
+ end
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #CLOUD API
3
3
 
4
- #An enterprise-grade Infrastructure is provided as a Service (IaaS) solution that can be managed through a browser-based \"Data Center Designer\" (DCD) tool or via an easy to use API. The API allows you to perform a variety of management tasks such as spinning up additional servers, adding volumes, adjusting networking, and so forth. It is designed to allow users to leverage the same power and flexibility found within the DCD visual tool. Both tools are consistent with their concepts and lend well to making the experience smooth and intuitive.
4
+ #IONOS Enterprise-grade Infrastructure as a Service (IaaS) solutions can be managed through the Cloud API, in addition or as an alternative to the \"Data Center Designer\" (DCD) browser-based tool. Both methods employ consistent concepts and features, deliver similar power and flexibility, and can be used to perform a multitude of management tasks, including adding servers, volumes, configuring networks, and so on.
5
5
 
6
- The version of the OpenAPI document: 5.0
6
+ The version of the OpenAPI document: 6.0-SDK.3
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 5.2.1-SNAPSHOT
@@ -23,13 +23,19 @@ module Ionoscloud
23
23
 
24
24
  attr_accessor :lans
25
25
 
26
+ attr_accessor :networkloadbalancers
27
+
28
+ attr_accessor :natgateways
29
+
26
30
  # Attribute mapping from ruby-style variable name to JSON key.
27
31
  def self.attribute_map
28
32
  {
29
33
  :'servers' => :'servers',
30
34
  :'volumes' => :'volumes',
31
35
  :'loadbalancers' => :'loadbalancers',
32
- :'lans' => :'lans'
36
+ :'lans' => :'lans',
37
+ :'networkloadbalancers' => :'networkloadbalancers',
38
+ :'natgateways' => :'natgateways'
33
39
  }
34
40
  end
35
41
 
@@ -44,7 +50,9 @@ module Ionoscloud
44
50
  :'servers' => :'Servers',
45
51
  :'volumes' => :'Volumes',
46
52
  :'loadbalancers' => :'Loadbalancers',
47
- :'lans' => :'Lans'
53
+ :'lans' => :'Lans',
54
+ :'networkloadbalancers' => :'NetworkLoadBalancers',
55
+ :'natgateways' => :'NatGateways'
48
56
  }
49
57
  end
50
58
 
@@ -84,6 +92,14 @@ module Ionoscloud
84
92
  if attributes.key?(:'lans')
85
93
  self.lans = attributes[:'lans']
86
94
  end
95
+
96
+ if attributes.key?(:'networkloadbalancers')
97
+ self.networkloadbalancers = attributes[:'networkloadbalancers']
98
+ end
99
+
100
+ if attributes.key?(:'natgateways')
101
+ self.natgateways = attributes[:'natgateways']
102
+ end
87
103
  end
88
104
 
89
105
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -107,7 +123,9 @@ module Ionoscloud
107
123
  servers == o.servers &&
108
124
  volumes == o.volumes &&
109
125
  loadbalancers == o.loadbalancers &&
110
- lans == o.lans
126
+ lans == o.lans &&
127
+ networkloadbalancers == o.networkloadbalancers &&
128
+ natgateways == o.natgateways
111
129
  end
112
130
 
113
131
  # @see the `==` method
@@ -119,7 +137,7 @@ module Ionoscloud
119
137
  # Calculates hash code according to all attributes.
120
138
  # @return [Integer] Hash code
121
139
  def hash
122
- [servers, volumes, loadbalancers, lans].hash
140
+ [servers, volumes, loadbalancers, lans, networkloadbalancers, natgateways].hash
123
141
  end
124
142
 
125
143
  # Builds the object from hash
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #CLOUD API
3
3
 
4
- #An enterprise-grade Infrastructure is provided as a Service (IaaS) solution that can be managed through a browser-based \"Data Center Designer\" (DCD) tool or via an easy to use API. The API allows you to perform a variety of management tasks such as spinning up additional servers, adding volumes, adjusting networking, and so forth. It is designed to allow users to leverage the same power and flexibility found within the DCD visual tool. Both tools are consistent with their concepts and lend well to making the experience smooth and intuitive.
4
+ #IONOS Enterprise-grade Infrastructure as a Service (IaaS) solutions can be managed through the Cloud API, in addition or as an alternative to the \"Data Center Designer\" (DCD) browser-based tool. Both methods employ consistent concepts and features, deliver similar power and flexibility, and can be used to perform a multitude of management tasks, including adding servers, volumes, configuring networks, and so on.
5
5
 
6
- The version of the OpenAPI document: 5.0
6
+ The version of the OpenAPI document: 6.0-SDK.3
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 5.2.1-SNAPSHOT
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #CLOUD API
3
3
 
4
- #An enterprise-grade Infrastructure is provided as a Service (IaaS) solution that can be managed through a browser-based \"Data Center Designer\" (DCD) tool or via an easy to use API. The API allows you to perform a variety of management tasks such as spinning up additional servers, adding volumes, adjusting networking, and so forth. It is designed to allow users to leverage the same power and flexibility found within the DCD visual tool. Both tools are consistent with their concepts and lend well to making the experience smooth and intuitive.
4
+ #IONOS Enterprise-grade Infrastructure as a Service (IaaS) solutions can be managed through the Cloud API, in addition or as an alternative to the \"Data Center Designer\" (DCD) browser-based tool. Both methods employ consistent concepts and features, deliver similar power and flexibility, and can be used to perform a multitude of management tasks, including adding servers, volumes, configuring networks, and so on.
5
5
 
6
- The version of the OpenAPI document: 5.0
6
+ The version of the OpenAPI document: 6.0-SDK.3
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 5.2.1-SNAPSHOT
@@ -158,7 +158,7 @@ module Ionoscloud
158
158
  # Check to see if the all the properties in the model are valid
159
159
  # @return true if the model is valid
160
160
  def valid?
161
- state_validator = EnumAttributeValidator.new('String', ["AVAILABLE", "INACTIVE", "BUSY", "DEPLOYING", "ACTIVE", "FAILED", "SUSPENDED", "FAILED_SUSPENDED", "UPDATING", "FAILED_UPDATING", "DESTROYING", "FAILED_DESTROYING", "TERMINATED", "UNKNOWN"])
161
+ state_validator = EnumAttributeValidator.new('String', ["AVAILABLE", "INACTIVE", "BUSY", "DEPLOYING", "ACTIVE", "FAILED", "SUSPENDED", "FAILED_SUSPENDED", "UPDATING", "FAILED_UPDATING", "DESTROYING", "FAILED_DESTROYING", "TERMINATED"])
162
162
  return false unless state_validator.valid?(@state)
163
163
  true
164
164
  end
@@ -166,7 +166,7 @@ module Ionoscloud
166
166
  # Custom attribute writer method checking allowed values (enum).
167
167
  # @param [Object] state Object to be assigned
168
168
  def state=(state)
169
- validator = EnumAttributeValidator.new('String', ["AVAILABLE", "INACTIVE", "BUSY", "DEPLOYING", "ACTIVE", "FAILED", "SUSPENDED", "FAILED_SUSPENDED", "UPDATING", "FAILED_UPDATING", "DESTROYING", "FAILED_DESTROYING", "TERMINATED", "UNKNOWN"])
169
+ validator = EnumAttributeValidator.new('String', ["AVAILABLE", "INACTIVE", "BUSY", "DEPLOYING", "ACTIVE", "FAILED", "SUSPENDED", "FAILED_SUSPENDED", "UPDATING", "FAILED_UPDATING", "DESTROYING", "FAILED_DESTROYING", "TERMINATED"])
170
170
  unless validator.valid?(state)
171
171
  fail ArgumentError, "invalid value for \"state\", must be one of #{validator.allowable_values}."
172
172
  end
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #CLOUD API
3
3
 
4
- #An enterprise-grade Infrastructure is provided as a Service (IaaS) solution that can be managed through a browser-based \"Data Center Designer\" (DCD) tool or via an easy to use API. The API allows you to perform a variety of management tasks such as spinning up additional servers, adding volumes, adjusting networking, and so forth. It is designed to allow users to leverage the same power and flexibility found within the DCD visual tool. Both tools are consistent with their concepts and lend well to making the experience smooth and intuitive.
4
+ #IONOS Enterprise-grade Infrastructure as a Service (IaaS) solutions can be managed through the Cloud API, in addition or as an alternative to the \"Data Center Designer\" (DCD) browser-based tool. Both methods employ consistent concepts and features, deliver similar power and flexibility, and can be used to perform a multitude of management tasks, including adding servers, volumes, configuring networks, and so on.
5
5
 
6
- The version of the OpenAPI document: 5.0
6
+ The version of the OpenAPI document: 6.0-SDK.3
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 5.2.1-SNAPSHOT
@@ -33,6 +33,9 @@ module Ionoscloud
33
33
  # Boolean value representing if the data center requires extra protection e.g. two factor protection
34
34
  attr_accessor :sec_auth_protection
35
35
 
36
+ # Array of features and CPU families available in a location
37
+ attr_accessor :cpu_architecture
38
+
36
39
  # Attribute mapping from ruby-style variable name to JSON key.
37
40
  def self.attribute_map
38
41
  {
@@ -41,7 +44,8 @@ module Ionoscloud
41
44
  :'location' => :'location',
42
45
  :'version' => :'version',
43
46
  :'features' => :'features',
44
- :'sec_auth_protection' => :'secAuthProtection'
47
+ :'sec_auth_protection' => :'secAuthProtection',
48
+ :'cpu_architecture' => :'cpuArchitecture'
45
49
  }
46
50
  end
47
51
 
@@ -58,7 +62,8 @@ module Ionoscloud
58
62
  :'location' => :'String',
59
63
  :'version' => :'Integer',
60
64
  :'features' => :'Array<String>',
61
- :'sec_auth_protection' => :'Boolean'
65
+ :'sec_auth_protection' => :'Boolean',
66
+ :'cpu_architecture' => :'Array<CpuArchitectureProperties>'
62
67
  }
63
68
  end
64
69
 
@@ -108,6 +113,12 @@ module Ionoscloud
108
113
  if attributes.key?(:'sec_auth_protection')
109
114
  self.sec_auth_protection = attributes[:'sec_auth_protection']
110
115
  end
116
+
117
+ if attributes.key?(:'cpu_architecture')
118
+ if (value = attributes[:'cpu_architecture']).is_a?(Array)
119
+ self.cpu_architecture = value
120
+ end
121
+ end
111
122
  end
112
123
 
113
124
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -138,7 +149,8 @@ module Ionoscloud
138
149
  location == o.location &&
139
150
  version == o.version &&
140
151
  features == o.features &&
141
- sec_auth_protection == o.sec_auth_protection
152
+ sec_auth_protection == o.sec_auth_protection &&
153
+ cpu_architecture == o.cpu_architecture
142
154
  end
143
155
 
144
156
  # @see the `==` method
@@ -150,7 +162,7 @@ module Ionoscloud
150
162
  # Calculates hash code according to all attributes.
151
163
  # @return [Integer] Hash code
152
164
  def hash
153
- [name, description, location, version, features, sec_auth_protection].hash
165
+ [name, description, location, version, features, sec_auth_protection, cpu_architecture].hash
154
166
  end
155
167
 
156
168
  # Builds the object from hash
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #CLOUD API
3
3
 
4
- #An enterprise-grade Infrastructure is provided as a Service (IaaS) solution that can be managed through a browser-based \"Data Center Designer\" (DCD) tool or via an easy to use API. The API allows you to perform a variety of management tasks such as spinning up additional servers, adding volumes, adjusting networking, and so forth. It is designed to allow users to leverage the same power and flexibility found within the DCD visual tool. Both tools are consistent with their concepts and lend well to making the experience smooth and intuitive.
4
+ #IONOS Enterprise-grade Infrastructure as a Service (IaaS) solutions can be managed through the Cloud API, in addition or as an alternative to the \"Data Center Designer\" (DCD) browser-based tool. Both methods employ consistent concepts and features, deliver similar power and flexibility, and can be used to perform a multitude of management tasks, including adding servers, volumes, configuring networks, and so on.
5
5
 
6
- The version of the OpenAPI document: 5.0
6
+ The version of the OpenAPI document: 6.0-SDK.3
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 5.2.1-SNAPSHOT
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #CLOUD API
3
3
 
4
- #An enterprise-grade Infrastructure is provided as a Service (IaaS) solution that can be managed through a browser-based \"Data Center Designer\" (DCD) tool or via an easy to use API. The API allows you to perform a variety of management tasks such as spinning up additional servers, adding volumes, adjusting networking, and so forth. It is designed to allow users to leverage the same power and flexibility found within the DCD visual tool. Both tools are consistent with their concepts and lend well to making the experience smooth and intuitive.
4
+ #IONOS Enterprise-grade Infrastructure as a Service (IaaS) solutions can be managed through the Cloud API, in addition or as an alternative to the \"Data Center Designer\" (DCD) browser-based tool. Both methods employ consistent concepts and features, deliver similar power and flexibility, and can be used to perform a multitude of management tasks, including adding servers, volumes, configuring networks, and so on.
5
5
 
6
- The version of the OpenAPI document: 5.0
6
+ The version of the OpenAPI document: 6.0-SDK.3
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 5.2.1-SNAPSHOT
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #CLOUD API
3
3
 
4
- #An enterprise-grade Infrastructure is provided as a Service (IaaS) solution that can be managed through a browser-based \"Data Center Designer\" (DCD) tool or via an easy to use API. The API allows you to perform a variety of management tasks such as spinning up additional servers, adding volumes, adjusting networking, and so forth. It is designed to allow users to leverage the same power and flexibility found within the DCD visual tool. Both tools are consistent with their concepts and lend well to making the experience smooth and intuitive.
4
+ #IONOS Enterprise-grade Infrastructure as a Service (IaaS) solutions can be managed through the Cloud API, in addition or as an alternative to the \"Data Center Designer\" (DCD) browser-based tool. Both methods employ consistent concepts and features, deliver similar power and flexibility, and can be used to perform a multitude of management tasks, including adding servers, volumes, configuring networks, and so on.
5
5
 
6
- The version of the OpenAPI document: 5.0
6
+ The version of the OpenAPI document: 6.0-SDK.3
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 5.2.1-SNAPSHOT
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #CLOUD API
3
3
 
4
- #An enterprise-grade Infrastructure is provided as a Service (IaaS) solution that can be managed through a browser-based \"Data Center Designer\" (DCD) tool or via an easy to use API. The API allows you to perform a variety of management tasks such as spinning up additional servers, adding volumes, adjusting networking, and so forth. It is designed to allow users to leverage the same power and flexibility found within the DCD visual tool. Both tools are consistent with their concepts and lend well to making the experience smooth and intuitive.
4
+ #IONOS Enterprise-grade Infrastructure as a Service (IaaS) solutions can be managed through the Cloud API, in addition or as an alternative to the \"Data Center Designer\" (DCD) browser-based tool. Both methods employ consistent concepts and features, deliver similar power and flexibility, and can be used to perform a multitude of management tasks, including adding servers, volumes, configuring networks, and so on.
5
5
 
6
- The version of the OpenAPI document: 5.0
6
+ The version of the OpenAPI document: 6.0-SDK.3
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 5.2.1-SNAPSHOT
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #CLOUD API
3
3
 
4
- #An enterprise-grade Infrastructure is provided as a Service (IaaS) solution that can be managed through a browser-based \"Data Center Designer\" (DCD) tool or via an easy to use API. The API allows you to perform a variety of management tasks such as spinning up additional servers, adding volumes, adjusting networking, and so forth. It is designed to allow users to leverage the same power and flexibility found within the DCD visual tool. Both tools are consistent with their concepts and lend well to making the experience smooth and intuitive.
4
+ #IONOS Enterprise-grade Infrastructure as a Service (IaaS) solutions can be managed through the Cloud API, in addition or as an alternative to the \"Data Center Designer\" (DCD) browser-based tool. Both methods employ consistent concepts and features, deliver similar power and flexibility, and can be used to perform a multitude of management tasks, including adding servers, volumes, configuring networks, and so on.
5
5
 
6
- The version of the OpenAPI document: 5.0
6
+ The version of the OpenAPI document: 6.0-SDK.3
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 5.2.1-SNAPSHOT
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #CLOUD API
3
3
 
4
- #An enterprise-grade Infrastructure is provided as a Service (IaaS) solution that can be managed through a browser-based \"Data Center Designer\" (DCD) tool or via an easy to use API. The API allows you to perform a variety of management tasks such as spinning up additional servers, adding volumes, adjusting networking, and so forth. It is designed to allow users to leverage the same power and flexibility found within the DCD visual tool. Both tools are consistent with their concepts and lend well to making the experience smooth and intuitive.
4
+ #IONOS Enterprise-grade Infrastructure as a Service (IaaS) solutions can be managed through the Cloud API, in addition or as an alternative to the \"Data Center Designer\" (DCD) browser-based tool. Both methods employ consistent concepts and features, deliver similar power and flexibility, and can be used to perform a multitude of management tasks, including adding servers, volumes, configuring networks, and so on.
5
5
 
6
- The version of the OpenAPI document: 5.0
6
+ The version of the OpenAPI document: 6.0-SDK.3
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 5.2.1-SNAPSHOT
@@ -42,6 +42,9 @@ module Ionoscloud
42
42
  # Defines the end range of the allowed port (from 1 to 65534) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports
43
43
  attr_accessor :port_range_end
44
44
 
45
+ # The type of firewall rule. If is not specified, it will take the default value INGRESS
46
+ attr_accessor :type
47
+
45
48
  class EnumAttributeValidator
46
49
  attr_reader :datatype
47
50
  attr_reader :allowable_values
@@ -75,7 +78,8 @@ module Ionoscloud
75
78
  :'icmp_code' => :'icmpCode',
76
79
  :'icmp_type' => :'icmpType',
77
80
  :'port_range_start' => :'portRangeStart',
78
- :'port_range_end' => :'portRangeEnd'
81
+ :'port_range_end' => :'portRangeEnd',
82
+ :'type' => :'type'
79
83
  }
80
84
  end
81
85
 
@@ -95,7 +99,8 @@ module Ionoscloud
95
99
  :'icmp_code' => :'Integer',
96
100
  :'icmp_type' => :'Integer',
97
101
  :'port_range_start' => :'Integer',
98
- :'port_range_end' => :'Integer'
102
+ :'port_range_end' => :'Integer',
103
+ :'type' => :'String'
99
104
  }
100
105
  end
101
106
 
@@ -155,6 +160,10 @@ module Ionoscloud
155
160
  if attributes.key?(:'port_range_end')
156
161
  self.port_range_end = attributes[:'port_range_end']
157
162
  end
163
+
164
+ if attributes.key?(:'type')
165
+ self.type = attributes[:'type']
166
+ end
158
167
  end
159
168
 
160
169
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -232,6 +241,8 @@ module Ionoscloud
232
241
  return false if !@port_range_start.nil? && @port_range_start < 1
233
242
  return false if !@port_range_end.nil? && @port_range_end > 65534
234
243
  return false if !@port_range_end.nil? && @port_range_end < 1
244
+ type_validator = EnumAttributeValidator.new('String', ["INGRESS", "EGRESS"])
245
+ return false unless type_validator.valid?(@type)
235
246
  true
236
247
  end
237
248
 
@@ -334,6 +345,16 @@ module Ionoscloud
334
345
  @port_range_end = port_range_end
335
346
  end
336
347
 
348
+ # Custom attribute writer method checking allowed values (enum).
349
+ # @param [Object] type Object to be assigned
350
+ def type=(type)
351
+ validator = EnumAttributeValidator.new('String', ["INGRESS", "EGRESS"])
352
+ unless validator.valid?(type)
353
+ fail ArgumentError, "invalid value for \"type\", must be one of #{validator.allowable_values}."
354
+ end
355
+ @type = type
356
+ end
357
+
337
358
  # Checks equality by comparing each attribute.
338
359
  # @param [Object] Object to be compared
339
360
  def ==(o)
@@ -347,7 +368,8 @@ module Ionoscloud
347
368
  icmp_code == o.icmp_code &&
348
369
  icmp_type == o.icmp_type &&
349
370
  port_range_start == o.port_range_start &&
350
- port_range_end == o.port_range_end
371
+ port_range_end == o.port_range_end &&
372
+ type == o.type
351
373
  end
352
374
 
353
375
  # @see the `==` method
@@ -359,7 +381,7 @@ module Ionoscloud
359
381
  # Calculates hash code according to all attributes.
360
382
  # @return [Integer] Hash code
361
383
  def hash
362
- [name, protocol, source_mac, source_ip, target_ip, icmp_code, icmp_type, port_range_start, port_range_end].hash
384
+ [name, protocol, source_mac, source_ip, target_ip, icmp_code, icmp_type, port_range_start, port_range_end, type].hash
363
385
  end
364
386
 
365
387
  # Builds the object from hash