ionoscloud 5.1.1 → 5.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (293) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +3 -3
  3. data/README.md +1 -1
  4. data/docs/models/KubernetesClusterProperties.md +0 -2
  5. data/docs/models/KubernetesClusterPropertiesForPost.md +0 -2
  6. data/docs/models/KubernetesNodePoolProperties.md +0 -3
  7. data/docs/models/KubernetesNodePoolPropertiesForPost.md +0 -3
  8. data/lib/ionoscloud/api_client.rb +2 -2
  9. data/lib/ionoscloud/models/attached_volumes.rb +65 -11
  10. data/lib/ionoscloud/models/backup_unit.rb +45 -5
  11. data/lib/ionoscloud/models/backup_unit_properties.rb +27 -3
  12. data/lib/ionoscloud/models/backup_unit_sso.rb +9 -1
  13. data/lib/ionoscloud/models/backup_units.rb +38 -8
  14. data/lib/ionoscloud/models/balanced_nics.rb +65 -11
  15. data/lib/ionoscloud/models/cdroms.rb +65 -11
  16. data/lib/ionoscloud/models/connectable_datacenter.rb +27 -3
  17. data/lib/ionoscloud/models/contract.rb +18 -2
  18. data/lib/ionoscloud/models/contract_properties.rb +45 -5
  19. data/lib/ionoscloud/models/data_center_entities.rb +36 -4
  20. data/lib/ionoscloud/models/datacenter.rb +54 -6
  21. data/lib/ionoscloud/models/datacenter_element_metadata.rb +72 -8
  22. data/lib/ionoscloud/models/datacenter_properties.rb +56 -10
  23. data/lib/ionoscloud/models/datacenters.rb +65 -11
  24. data/lib/ionoscloud/models/error.rb +20 -6
  25. data/lib/ionoscloud/models/error_message.rb +18 -2
  26. data/lib/ionoscloud/models/firewall_rule.rb +45 -5
  27. data/lib/ionoscloud/models/firewall_rules.rb +65 -11
  28. data/lib/ionoscloud/models/firewallrule_properties.rb +81 -9
  29. data/lib/ionoscloud/models/group.rb +45 -5
  30. data/lib/ionoscloud/models/group_entities.rb +18 -2
  31. data/lib/ionoscloud/models/group_members.rb +38 -8
  32. data/lib/ionoscloud/models/group_properties.rb +90 -10
  33. data/lib/ionoscloud/models/group_share.rb +36 -4
  34. data/lib/ionoscloud/models/group_share_properties.rb +18 -2
  35. data/lib/ionoscloud/models/group_shares.rb +38 -8
  36. data/lib/ionoscloud/models/group_users.rb +38 -8
  37. data/lib/ionoscloud/models/groups.rb +38 -8
  38. data/lib/ionoscloud/models/image.rb +45 -5
  39. data/lib/ionoscloud/models/image_properties.rb +173 -23
  40. data/lib/ionoscloud/models/images.rb +38 -8
  41. data/lib/ionoscloud/models/info.rb +27 -3
  42. data/lib/ionoscloud/models/ip_block.rb +45 -5
  43. data/lib/ionoscloud/models/ip_block_properties.rb +49 -13
  44. data/lib/ionoscloud/models/ip_blocks.rb +65 -11
  45. data/lib/ionoscloud/models/ip_consumer.rb +81 -9
  46. data/lib/ionoscloud/models/ip_failover.rb +18 -2
  47. data/lib/ionoscloud/models/kubernetes_auto_scaling.rb +18 -2
  48. data/lib/ionoscloud/models/kubernetes_cluster.rb +54 -6
  49. data/lib/ionoscloud/models/kubernetes_cluster_entities.rb +9 -1
  50. data/lib/ionoscloud/models/kubernetes_cluster_for_post.rb +54 -6
  51. data/lib/ionoscloud/models/kubernetes_cluster_for_put.rb +54 -6
  52. data/lib/ionoscloud/models/kubernetes_cluster_properties.rb +70 -34
  53. data/lib/ionoscloud/models/kubernetes_cluster_properties_for_post.rb +48 -24
  54. data/lib/ionoscloud/models/kubernetes_cluster_properties_for_put.rb +49 -13
  55. data/lib/ionoscloud/models/kubernetes_clusters.rb +38 -8
  56. data/lib/ionoscloud/models/kubernetes_config.rb +36 -4
  57. data/lib/ionoscloud/models/kubernetes_config_properties.rb +9 -1
  58. data/lib/ionoscloud/models/kubernetes_maintenance_window.rb +18 -2
  59. data/lib/ionoscloud/models/kubernetes_node.rb +45 -5
  60. data/lib/ionoscloud/models/kubernetes_node_metadata.rb +45 -5
  61. data/lib/ionoscloud/models/kubernetes_node_pool.rb +45 -5
  62. data/lib/ionoscloud/models/kubernetes_node_pool_for_post.rb +45 -5
  63. data/lib/ionoscloud/models/kubernetes_node_pool_for_put.rb +45 -5
  64. data/lib/ionoscloud/models/kubernetes_node_pool_lan.rb +9 -1
  65. data/lib/ionoscloud/models/kubernetes_node_pool_properties.rb +163 -47
  66. data/lib/ionoscloud/models/kubernetes_node_pool_properties_for_post.rb +152 -42
  67. data/lib/ionoscloud/models/kubernetes_node_pool_properties_for_put.rb +89 -25
  68. data/lib/ionoscloud/models/kubernetes_node_pools.rb +38 -8
  69. data/lib/ionoscloud/models/kubernetes_node_properties.rb +36 -4
  70. data/lib/ionoscloud/models/kubernetes_nodes.rb +38 -8
  71. data/lib/ionoscloud/models/label.rb +45 -5
  72. data/lib/ionoscloud/models/label_properties.rb +45 -5
  73. data/lib/ionoscloud/models/label_resource.rb +45 -5
  74. data/lib/ionoscloud/models/label_resource_properties.rb +18 -2
  75. data/lib/ionoscloud/models/label_resources.rb +65 -11
  76. data/lib/ionoscloud/models/labels.rb +38 -8
  77. data/lib/ionoscloud/models/lan.rb +54 -6
  78. data/lib/ionoscloud/models/lan_entities.rb +9 -1
  79. data/lib/ionoscloud/models/lan_nics.rb +65 -11
  80. data/lib/ionoscloud/models/lan_post.rb +54 -6
  81. data/lib/ionoscloud/models/lan_properties.rb +38 -8
  82. data/lib/ionoscloud/models/lan_properties_post.rb +38 -8
  83. data/lib/ionoscloud/models/lans.rb +65 -11
  84. data/lib/ionoscloud/models/loadbalancer.rb +54 -6
  85. data/lib/ionoscloud/models/loadbalancer_entities.rb +9 -1
  86. data/lib/ionoscloud/models/loadbalancer_properties.rb +27 -3
  87. data/lib/ionoscloud/models/loadbalancers.rb +65 -11
  88. data/lib/ionoscloud/models/location.rb +45 -5
  89. data/lib/ionoscloud/models/location_properties.rb +31 -11
  90. data/lib/ionoscloud/models/locations.rb +38 -8
  91. data/lib/ionoscloud/models/nic.rb +54 -6
  92. data/lib/ionoscloud/models/nic_entities.rb +9 -1
  93. data/lib/ionoscloud/models/nic_properties.rb +65 -11
  94. data/lib/ionoscloud/models/nics.rb +65 -11
  95. data/lib/ionoscloud/models/no_state_meta_data.rb +63 -7
  96. data/lib/ionoscloud/models/pagination_links.rb +27 -3
  97. data/lib/ionoscloud/models/peer.rb +45 -5
  98. data/lib/ionoscloud/models/private_cross_connect.rb +45 -5
  99. data/lib/ionoscloud/models/private_cross_connect_properties.rb +40 -12
  100. data/lib/ionoscloud/models/private_cross_connects.rb +38 -8
  101. data/lib/ionoscloud/models/request.rb +45 -5
  102. data/lib/ionoscloud/models/request_metadata.rb +36 -4
  103. data/lib/ionoscloud/models/request_properties.rb +38 -8
  104. data/lib/ionoscloud/models/request_status.rb +36 -4
  105. data/lib/ionoscloud/models/request_status_metadata.rb +38 -8
  106. data/lib/ionoscloud/models/request_target.rb +18 -2
  107. data/lib/ionoscloud/models/requests.rb +65 -11
  108. data/lib/ionoscloud/models/resource.rb +54 -6
  109. data/lib/ionoscloud/models/resource_entities.rb +9 -1
  110. data/lib/ionoscloud/models/resource_groups.rb +38 -8
  111. data/lib/ionoscloud/models/resource_limits.rb +153 -17
  112. data/lib/ionoscloud/models/resource_properties.rb +18 -2
  113. data/lib/ionoscloud/models/resource_reference.rb +27 -3
  114. data/lib/ionoscloud/models/resources.rb +38 -8
  115. data/lib/ionoscloud/models/resources_users.rb +38 -8
  116. data/lib/ionoscloud/models/s3_bucket.rb +9 -1
  117. data/lib/ionoscloud/models/s3_key.rb +45 -5
  118. data/lib/ionoscloud/models/s3_key_metadata.rb +18 -2
  119. data/lib/ionoscloud/models/s3_key_properties.rb +18 -2
  120. data/lib/ionoscloud/models/s3_keys.rb +38 -8
  121. data/lib/ionoscloud/models/s3_object_storage_sso.rb +9 -1
  122. data/lib/ionoscloud/models/server.rb +54 -6
  123. data/lib/ionoscloud/models/server_entities.rb +27 -3
  124. data/lib/ionoscloud/models/server_properties.rb +72 -8
  125. data/lib/ionoscloud/models/servers.rb +65 -11
  126. data/lib/ionoscloud/models/snapshot.rb +45 -5
  127. data/lib/ionoscloud/models/snapshot_properties.rb +144 -16
  128. data/lib/ionoscloud/models/snapshots.rb +38 -8
  129. data/lib/ionoscloud/models/user.rb +54 -6
  130. data/lib/ionoscloud/models/user_metadata.rb +27 -3
  131. data/lib/ionoscloud/models/user_post.rb +9 -1
  132. data/lib/ionoscloud/models/user_properties.rb +72 -8
  133. data/lib/ionoscloud/models/user_properties_post.rb +72 -8
  134. data/lib/ionoscloud/models/user_properties_put.rb +63 -7
  135. data/lib/ionoscloud/models/user_put.rb +18 -2
  136. data/lib/ionoscloud/models/users.rb +65 -11
  137. data/lib/ionoscloud/models/users_entities.rb +18 -2
  138. data/lib/ionoscloud/models/volume.rb +45 -5
  139. data/lib/ionoscloud/models/volume_properties.rb +173 -23
  140. data/lib/ionoscloud/models/volumes.rb +65 -11
  141. data/lib/ionoscloud/version.rb +1 -1
  142. metadata +2 -304
  143. data/spec/api/_api_spec.rb +0 -49
  144. data/spec/api/backup_unit_api_spec.rb +0 -140
  145. data/spec/api/contract_api_spec.rb +0 -49
  146. data/spec/api/data_center_api_spec.rb +0 -128
  147. data/spec/api/image_api_spec.rb +0 -111
  148. data/spec/api/ip_blocks_api_spec.rb +0 -128
  149. data/spec/api/kubernetes_api_spec.rb +0 -306
  150. data/spec/api/label_api_spec.rb +0 -480
  151. data/spec/api/lan_api_spec.rb +0 -186
  152. data/spec/api/load_balancer_api_spec.rb +0 -203
  153. data/spec/api/location_api_spec.rb +0 -80
  154. data/spec/api/nic_api_spec.rb +0 -251
  155. data/spec/api/private_cross_connect_api_spec.rb +0 -110
  156. data/spec/api/request_api_spec.rb +0 -92
  157. data/spec/api/server_api_spec.rb +0 -337
  158. data/spec/api/snapshot_api_spec.rb +0 -111
  159. data/spec/api/user_management_api_spec.rb +0 -497
  160. data/spec/api/volume_api_spec.rb +0 -171
  161. data/spec/models/attached_volumes_spec.rb +0 -70
  162. data/spec/models/backup_unit_properties_spec.rb +0 -46
  163. data/spec/models/backup_unit_spec.rb +0 -62
  164. data/spec/models/backup_unit_sso_spec.rb +0 -34
  165. data/spec/models/backup_units_spec.rb +0 -56
  166. data/spec/models/balanced_nics_spec.rb +0 -70
  167. data/spec/models/cdroms_spec.rb +0 -70
  168. data/spec/models/connectable_datacenter_spec.rb +0 -46
  169. data/spec/models/contract_properties_spec.rb +0 -58
  170. data/spec/models/contract_spec.rb +0 -40
  171. data/spec/models/data_center_entities_spec.rb +0 -52
  172. data/spec/models/datacenter_element_metadata_spec.rb +0 -80
  173. data/spec/models/datacenter_properties_spec.rb +0 -64
  174. data/spec/models/datacenter_spec.rb +0 -64
  175. data/spec/models/datacenters_spec.rb +0 -70
  176. data/spec/models/error_message_spec.rb +0 -40
  177. data/spec/models/error_spec.rb +0 -40
  178. data/spec/models/firewall_rule_spec.rb +0 -58
  179. data/spec/models/firewall_rules_spec.rb +0 -70
  180. data/spec/models/firewallrule_properties_spec.rb +0 -86
  181. data/spec/models/group_entities_spec.rb +0 -40
  182. data/spec/models/group_members_spec.rb +0 -52
  183. data/spec/models/group_properties_spec.rb +0 -88
  184. data/spec/models/group_share_properties_spec.rb +0 -40
  185. data/spec/models/group_share_spec.rb +0 -52
  186. data/spec/models/group_shares_spec.rb +0 -52
  187. data/spec/models/group_spec.rb +0 -58
  188. data/spec/models/group_users_spec.rb +0 -52
  189. data/spec/models/groups_spec.rb +0 -52
  190. data/spec/models/image_properties_spec.rb +0 -154
  191. data/spec/models/image_spec.rb +0 -58
  192. data/spec/models/images_spec.rb +0 -52
  193. data/spec/models/info_spec.rb +0 -46
  194. data/spec/models/ip_block_properties_spec.rb +0 -58
  195. data/spec/models/ip_block_spec.rb +0 -58
  196. data/spec/models/ip_blocks_spec.rb +0 -70
  197. data/spec/models/ip_consumer_spec.rb +0 -82
  198. data/spec/models/ip_failover_spec.rb +0 -40
  199. data/spec/models/kubernetes_auto_scaling_spec.rb +0 -40
  200. data/spec/models/kubernetes_cluster_entities_spec.rb +0 -34
  201. data/spec/models/kubernetes_cluster_for_post_spec.rb +0 -68
  202. data/spec/models/kubernetes_cluster_for_put_spec.rb +0 -68
  203. data/spec/models/kubernetes_cluster_properties_for_post_spec.rb +0 -64
  204. data/spec/models/kubernetes_cluster_properties_for_put_spec.rb +0 -58
  205. data/spec/models/kubernetes_cluster_properties_spec.rb +0 -76
  206. data/spec/models/kubernetes_cluster_spec.rb +0 -68
  207. data/spec/models/kubernetes_clusters_spec.rb +0 -56
  208. data/spec/models/kubernetes_config_properties_spec.rb +0 -34
  209. data/spec/models/kubernetes_config_spec.rb +0 -56
  210. data/spec/models/kubernetes_maintenance_window_spec.rb +0 -44
  211. data/spec/models/kubernetes_node_metadata_spec.rb +0 -62
  212. data/spec/models/kubernetes_node_pool_for_post_spec.rb +0 -62
  213. data/spec/models/kubernetes_node_pool_for_put_spec.rb +0 -62
  214. data/spec/models/kubernetes_node_pool_lan_spec.rb +0 -34
  215. data/spec/models/kubernetes_node_pool_properties_for_post_spec.rb +0 -138
  216. data/spec/models/kubernetes_node_pool_properties_for_put_spec.rb +0 -82
  217. data/spec/models/kubernetes_node_pool_properties_spec.rb +0 -144
  218. data/spec/models/kubernetes_node_pool_spec.rb +0 -62
  219. data/spec/models/kubernetes_node_pools_spec.rb +0 -56
  220. data/spec/models/kubernetes_node_properties_spec.rb +0 -52
  221. data/spec/models/kubernetes_node_spec.rb +0 -62
  222. data/spec/models/kubernetes_nodes_spec.rb +0 -56
  223. data/spec/models/label_properties_spec.rb +0 -58
  224. data/spec/models/label_resource_properties_spec.rb +0 -40
  225. data/spec/models/label_resource_spec.rb +0 -62
  226. data/spec/models/label_resources_spec.rb +0 -74
  227. data/spec/models/label_spec.rb +0 -62
  228. data/spec/models/labels_spec.rb +0 -56
  229. data/spec/models/lan_entities_spec.rb +0 -34
  230. data/spec/models/lan_nics_spec.rb +0 -70
  231. data/spec/models/lan_post_spec.rb +0 -64
  232. data/spec/models/lan_properties_post_spec.rb +0 -52
  233. data/spec/models/lan_properties_spec.rb +0 -52
  234. data/spec/models/lan_spec.rb +0 -64
  235. data/spec/models/lans_spec.rb +0 -70
  236. data/spec/models/loadbalancer_entities_spec.rb +0 -34
  237. data/spec/models/loadbalancer_properties_spec.rb +0 -46
  238. data/spec/models/loadbalancer_spec.rb +0 -64
  239. data/spec/models/loadbalancers_spec.rb +0 -70
  240. data/spec/models/location_properties_spec.rb +0 -46
  241. data/spec/models/location_spec.rb +0 -58
  242. data/spec/models/locations_spec.rb +0 -52
  243. data/spec/models/nic_entities_spec.rb +0 -34
  244. data/spec/models/nic_properties_spec.rb +0 -70
  245. data/spec/models/nic_spec.rb +0 -64
  246. data/spec/models/nics_spec.rb +0 -70
  247. data/spec/models/no_state_meta_data_spec.rb +0 -70
  248. data/spec/models/pagination_links_spec.rb +0 -46
  249. data/spec/models/peer_spec.rb +0 -58
  250. data/spec/models/private_cross_connect_properties_spec.rb +0 -52
  251. data/spec/models/private_cross_connect_spec.rb +0 -58
  252. data/spec/models/private_cross_connects_spec.rb +0 -52
  253. data/spec/models/request_metadata_spec.rb +0 -52
  254. data/spec/models/request_properties_spec.rb +0 -52
  255. data/spec/models/request_spec.rb +0 -58
  256. data/spec/models/request_status_metadata_spec.rb +0 -56
  257. data/spec/models/request_status_spec.rb +0 -52
  258. data/spec/models/request_target_spec.rb +0 -44
  259. data/spec/models/requests_spec.rb +0 -70
  260. data/spec/models/resource_entities_spec.rb +0 -34
  261. data/spec/models/resource_groups_spec.rb +0 -52
  262. data/spec/models/resource_limits_spec.rb +0 -130
  263. data/spec/models/resource_properties_spec.rb +0 -40
  264. data/spec/models/resource_reference_spec.rb +0 -46
  265. data/spec/models/resource_spec.rb +0 -64
  266. data/spec/models/resources_spec.rb +0 -52
  267. data/spec/models/resources_users_spec.rb +0 -52
  268. data/spec/models/s3_bucket_spec.rb +0 -34
  269. data/spec/models/s3_key_metadata_spec.rb +0 -40
  270. data/spec/models/s3_key_properties_spec.rb +0 -40
  271. data/spec/models/s3_key_spec.rb +0 -58
  272. data/spec/models/s3_keys_spec.rb +0 -52
  273. data/spec/models/s3_object_storage_sso_spec.rb +0 -34
  274. data/spec/models/server_entities_spec.rb +0 -46
  275. data/spec/models/server_properties_spec.rb +0 -84
  276. data/spec/models/server_spec.rb +0 -64
  277. data/spec/models/servers_spec.rb +0 -70
  278. data/spec/models/snapshot_properties_spec.rb +0 -128
  279. data/spec/models/snapshot_spec.rb +0 -58
  280. data/spec/models/snapshots_spec.rb +0 -52
  281. data/spec/models/type_spec.rb +0 -28
  282. data/spec/models/user_metadata_spec.rb +0 -46
  283. data/spec/models/user_post_spec.rb +0 -34
  284. data/spec/models/user_properties_post_spec.rb +0 -76
  285. data/spec/models/user_properties_put_spec.rb +0 -70
  286. data/spec/models/user_properties_spec.rb +0 -76
  287. data/spec/models/user_put_spec.rb +0 -40
  288. data/spec/models/user_spec.rb +0 -64
  289. data/spec/models/users_entities_spec.rb +0 -40
  290. data/spec/models/users_spec.rb +0 -70
  291. data/spec/models/volume_properties_spec.rb +0 -158
  292. data/spec/models/volume_spec.rb +0 -58
  293. data/spec/models/volumes_spec.rb +0 -70
@@ -15,55 +15,68 @@ require 'time'
15
15
 
16
16
  module Ionoscloud
17
17
  class KubernetesNodePoolPropertiesForPost
18
+
18
19
  # A Kubernetes Node Pool Name. Valid Kubernetes Node Pool name must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between.
19
20
  attr_accessor :name
20
21
 
22
+
21
23
  # A valid uuid of the datacenter on which user has access
22
24
  attr_accessor :datacenter_id
23
25
 
26
+
24
27
  # Number of nodes part of the Node Pool
25
28
  attr_accessor :node_count
26
29
 
30
+
27
31
  # A valid cpu family name
28
32
  attr_accessor :cpu_family
29
33
 
34
+
30
35
  # Number of cores for node
31
36
  attr_accessor :cores_count
32
37
 
38
+
33
39
  # RAM size for node, minimum size is 2048MB. Ram size must be set to multiple of 1024MB.
34
40
  attr_accessor :ram_size
35
41
 
42
+
36
43
  # The availability zone in which the target VM should exist
37
44
  attr_accessor :availability_zone
38
45
 
46
+
39
47
  # Hardware type of the volume
40
48
  attr_accessor :storage_type
41
49
 
50
+
42
51
  # The size of the volume in GB. The size should be greater than 10GB.
43
52
  attr_accessor :storage_size
44
53
 
54
+
45
55
  # The kubernetes version in which a nodepool is running. This imposes restrictions on what kubernetes versions can be run in a cluster's nodepools. Additionally, not all kubernetes versions are viable upgrade targets for all prior versions.
46
56
  attr_accessor :k8s_version
47
57
 
58
+
48
59
  attr_accessor :maintenance_window
49
60
 
61
+
50
62
  attr_accessor :auto_scaling
51
63
 
64
+
52
65
  # array of additional LANs attached to worker nodes
53
66
  attr_accessor :lans
54
67
 
68
+
55
69
  # map of labels attached to node pool
56
70
  attr_accessor :labels
57
71
 
72
+
58
73
  # map of annotations attached to node pool
59
74
  attr_accessor :annotations
60
75
 
76
+
61
77
  # Optional array of reserved public IP addresses to be used by the nodes. IPs must be from same location as the data center used for the node pool. The array must contain one extra IP than maximum number of nodes could be. (nodeCount+1 if fixed node amount or maxNodeCount+1 if auto scaling is used) The extra provided IP Will be used during rebuilding of nodes.
62
78
  attr_accessor :public_ips
63
79
 
64
- # Public IP address for the gateway performing source NAT for the node pool's nodes belonging to a private cluster. Required only if the node pool belongs to a private cluster.
65
- attr_accessor :gateway_ip
66
-
67
80
  class EnumAttributeValidator
68
81
  attr_reader :datatype
69
82
  attr_reader :allowable_values
@@ -89,23 +102,38 @@ module Ionoscloud
89
102
  # Attribute mapping from ruby-style variable name to JSON key.
90
103
  def self.attribute_map
91
104
  {
105
+
92
106
  :'name' => :'name',
107
+
93
108
  :'datacenter_id' => :'datacenterId',
109
+
94
110
  :'node_count' => :'nodeCount',
111
+
95
112
  :'cpu_family' => :'cpuFamily',
113
+
96
114
  :'cores_count' => :'coresCount',
115
+
97
116
  :'ram_size' => :'ramSize',
117
+
98
118
  :'availability_zone' => :'availabilityZone',
119
+
99
120
  :'storage_type' => :'storageType',
121
+
100
122
  :'storage_size' => :'storageSize',
123
+
101
124
  :'k8s_version' => :'k8sVersion',
125
+
102
126
  :'maintenance_window' => :'maintenanceWindow',
127
+
103
128
  :'auto_scaling' => :'autoScaling',
129
+
104
130
  :'lans' => :'lans',
131
+
105
132
  :'labels' => :'labels',
133
+
106
134
  :'annotations' => :'annotations',
135
+
107
136
  :'public_ips' => :'publicIps',
108
- :'gateway_ip' => :'gatewayIp'
109
137
  }
110
138
  end
111
139
 
@@ -117,29 +145,60 @@ module Ionoscloud
117
145
  # Attribute type mapping.
118
146
  def self.openapi_types
119
147
  {
148
+
120
149
  :'name' => :'String',
150
+
121
151
  :'datacenter_id' => :'String',
152
+
122
153
  :'node_count' => :'Integer',
154
+
123
155
  :'cpu_family' => :'String',
156
+
124
157
  :'cores_count' => :'Integer',
158
+
125
159
  :'ram_size' => :'Integer',
160
+
126
161
  :'availability_zone' => :'String',
162
+
127
163
  :'storage_type' => :'String',
164
+
128
165
  :'storage_size' => :'Integer',
166
+
129
167
  :'k8s_version' => :'String',
168
+
130
169
  :'maintenance_window' => :'KubernetesMaintenanceWindow',
170
+
131
171
  :'auto_scaling' => :'KubernetesAutoScaling',
172
+
132
173
  :'lans' => :'Array<KubernetesNodePoolLan>',
174
+
133
175
  :'labels' => :'Hash<String, String>',
176
+
134
177
  :'annotations' => :'Hash<String, String>',
178
+
135
179
  :'public_ips' => :'Array<String>',
136
- :'gateway_ip' => :'String'
137
180
  }
138
181
  end
139
182
 
140
183
  # List of attributes with nullable: true
141
184
  def self.openapi_nullable
142
185
  Set.new([
186
+
187
+
188
+
189
+
190
+
191
+
192
+
193
+
194
+
195
+
196
+
197
+
198
+
199
+
200
+
201
+
143
202
  ])
144
203
  end
145
204
 
@@ -157,81 +216,85 @@ module Ionoscloud
157
216
  end
158
217
  h[k.to_sym] = v
159
218
  }
219
+
160
220
 
161
221
  if attributes.key?(:'name')
162
222
  self.name = attributes[:'name']
163
223
  end
164
224
 
225
+
165
226
  if attributes.key?(:'datacenter_id')
166
227
  self.datacenter_id = attributes[:'datacenter_id']
167
228
  end
168
229
 
230
+
169
231
  if attributes.key?(:'node_count')
170
232
  self.node_count = attributes[:'node_count']
171
233
  end
172
234
 
235
+
173
236
  if attributes.key?(:'cpu_family')
174
237
  self.cpu_family = attributes[:'cpu_family']
175
238
  end
176
239
 
240
+
177
241
  if attributes.key?(:'cores_count')
178
242
  self.cores_count = attributes[:'cores_count']
179
243
  end
180
244
 
245
+
181
246
  if attributes.key?(:'ram_size')
182
247
  self.ram_size = attributes[:'ram_size']
183
248
  end
184
249
 
250
+
185
251
  if attributes.key?(:'availability_zone')
186
252
  self.availability_zone = attributes[:'availability_zone']
187
253
  end
188
254
 
255
+
189
256
  if attributes.key?(:'storage_type')
190
257
  self.storage_type = attributes[:'storage_type']
191
258
  end
192
259
 
260
+
193
261
  if attributes.key?(:'storage_size')
194
262
  self.storage_size = attributes[:'storage_size']
195
263
  end
196
264
 
265
+
197
266
  if attributes.key?(:'k8s_version')
198
267
  self.k8s_version = attributes[:'k8s_version']
199
268
  end
200
269
 
270
+
201
271
  if attributes.key?(:'maintenance_window')
202
272
  self.maintenance_window = attributes[:'maintenance_window']
203
273
  end
204
274
 
275
+
205
276
  if attributes.key?(:'auto_scaling')
206
277
  self.auto_scaling = attributes[:'auto_scaling']
207
278
  end
208
279
 
209
- if attributes.key?(:'lans')
210
- if (value = attributes[:'lans']).is_a?(Array)
211
- self.lans = value
212
- end
213
- end
214
280
 
215
- if attributes.key?(:'labels')
216
- if (value = attributes[:'labels']).is_a?(Hash)
217
- self.labels = value
218
- end
281
+ if attributes.key?(:'lans') && (value = attributes[:'lans']).is_a?(Array)
282
+ self.lans = value
219
283
  end
220
284
 
221
- if attributes.key?(:'annotations')
222
- if (value = attributes[:'annotations']).is_a?(Hash)
223
- self.annotations = value
224
- end
285
+
286
+ if attributes.key?(:'labels') && (value = attributes[:'labels']).is_a?(Hash)
287
+ self.labels = value
225
288
  end
226
289
 
227
- if attributes.key?(:'public_ips')
228
- if (value = attributes[:'public_ips']).is_a?(Array)
229
- self.public_ips = value
230
- end
290
+
291
+ if attributes.key?(:'annotations') && (value = attributes[:'annotations']).is_a?(Hash)
292
+ self.annotations = value
231
293
  end
232
294
 
233
- if attributes.key?(:'gateway_ip')
234
- self.gateway_ip = attributes[:'gateway_ip']
295
+
296
+ if attributes.key?(:'public_ips') && (value = attributes[:'public_ips']).is_a?(Array)
297
+ self.public_ips = value
235
298
  end
236
299
  end
237
300
 
@@ -239,64 +302,103 @@ module Ionoscloud
239
302
  # @return Array for valid properties with the reasons
240
303
  def list_invalid_properties
241
304
  invalid_properties = Array.new
305
+
242
306
  if @name.nil?
243
307
  invalid_properties.push('invalid value for "name", name cannot be nil.')
244
308
  end
245
309
 
310
+
246
311
  if @datacenter_id.nil?
247
312
  invalid_properties.push('invalid value for "datacenter_id", datacenter_id cannot be nil.')
248
313
  end
249
314
 
315
+
250
316
  if @node_count.nil?
251
317
  invalid_properties.push('invalid value for "node_count", node_count cannot be nil.')
252
318
  end
253
319
 
320
+
254
321
  if @cpu_family.nil?
255
322
  invalid_properties.push('invalid value for "cpu_family", cpu_family cannot be nil.')
256
323
  end
257
324
 
325
+
258
326
  if @cores_count.nil?
259
327
  invalid_properties.push('invalid value for "cores_count", cores_count cannot be nil.')
260
328
  end
261
329
 
330
+
262
331
  if @ram_size.nil?
263
332
  invalid_properties.push('invalid value for "ram_size", ram_size cannot be nil.')
264
333
  end
265
334
 
335
+
266
336
  if @availability_zone.nil?
267
337
  invalid_properties.push('invalid value for "availability_zone", availability_zone cannot be nil.')
268
338
  end
269
339
 
340
+
270
341
  if @storage_type.nil?
271
342
  invalid_properties.push('invalid value for "storage_type", storage_type cannot be nil.')
272
343
  end
273
344
 
345
+
274
346
  if @storage_size.nil?
275
347
  invalid_properties.push('invalid value for "storage_size", storage_size cannot be nil.')
276
348
  end
277
349
 
350
+
351
+
352
+
353
+
354
+
355
+
356
+
278
357
  invalid_properties
279
358
  end
280
359
 
281
360
  # Check to see if the all the properties in the model are valid
282
361
  # @return true if the model is valid
283
362
  def valid?
363
+
284
364
  return false if @name.nil?
365
+
285
366
  return false if @datacenter_id.nil?
367
+
286
368
  return false if @node_count.nil?
369
+
287
370
  return false if @cpu_family.nil?
371
+
288
372
  return false if @cores_count.nil?
373
+
289
374
  return false if @ram_size.nil?
375
+
290
376
  return false if @availability_zone.nil?
291
377
  availability_zone_validator = EnumAttributeValidator.new('String', ["AUTO", "ZONE_1", "ZONE_2"])
292
378
  return false unless availability_zone_validator.valid?(@availability_zone)
379
+
293
380
  return false if @storage_type.nil?
294
381
  storage_type_validator = EnumAttributeValidator.new('String', ["HDD", "SSD"])
295
382
  return false unless storage_type_validator.valid?(@storage_type)
383
+
296
384
  return false if @storage_size.nil?
385
+
386
+
387
+
388
+
389
+
390
+
391
+
297
392
  true
298
393
  end
299
394
 
395
+
396
+
397
+
398
+
399
+
400
+
401
+
300
402
  # Custom attribute writer method checking allowed values (enum).
301
403
  # @param [Object] availability_zone Object to be assigned
302
404
  def availability_zone=(availability_zone)
@@ -307,6 +409,7 @@ module Ionoscloud
307
409
  @availability_zone = availability_zone
308
410
  end
309
411
 
412
+
310
413
  # Custom attribute writer method checking allowed values (enum).
311
414
  # @param [Object] storage_type Object to be assigned
312
415
  def storage_type=(storage_type)
@@ -317,28 +420,35 @@ module Ionoscloud
317
420
  @storage_type = storage_type
318
421
  end
319
422
 
423
+
424
+
425
+
426
+
427
+
428
+
429
+
430
+
320
431
  # Checks equality by comparing each attribute.
321
432
  # @param [Object] Object to be compared
322
433
  def ==(o)
323
434
  return true if self.equal?(o)
324
435
  self.class == o.class &&
325
- name == o.name &&
326
- datacenter_id == o.datacenter_id &&
327
- node_count == o.node_count &&
328
- cpu_family == o.cpu_family &&
329
- cores_count == o.cores_count &&
330
- ram_size == o.ram_size &&
331
- availability_zone == o.availability_zone &&
332
- storage_type == o.storage_type &&
333
- storage_size == o.storage_size &&
334
- k8s_version == o.k8s_version &&
335
- maintenance_window == o.maintenance_window &&
336
- auto_scaling == o.auto_scaling &&
337
- lans == o.lans &&
338
- labels == o.labels &&
339
- annotations == o.annotations &&
340
- public_ips == o.public_ips &&
341
- gateway_ip == o.gateway_ip
436
+ name == o.name &&
437
+ datacenter_id == o.datacenter_id &&
438
+ node_count == o.node_count &&
439
+ cpu_family == o.cpu_family &&
440
+ cores_count == o.cores_count &&
441
+ ram_size == o.ram_size &&
442
+ availability_zone == o.availability_zone &&
443
+ storage_type == o.storage_type &&
444
+ storage_size == o.storage_size &&
445
+ k8s_version == o.k8s_version &&
446
+ maintenance_window == o.maintenance_window &&
447
+ auto_scaling == o.auto_scaling &&
448
+ lans == o.lans &&
449
+ labels == o.labels &&
450
+ annotations == o.annotations &&
451
+ public_ips == o.public_ips
342
452
  end
343
453
 
344
454
  # @see the `==` method
@@ -350,7 +460,7 @@ module Ionoscloud
350
460
  # Calculates hash code according to all attributes.
351
461
  # @return [Integer] Hash code
352
462
  def hash
353
- [name, datacenter_id, node_count, cpu_family, cores_count, ram_size, availability_zone, storage_type, storage_size, k8s_version, maintenance_window, auto_scaling, lans, labels, annotations, public_ips, gateway_ip].hash
463
+ [name, datacenter_id, node_count, cpu_family, cores_count, ram_size, availability_zone, storage_type, storage_size, k8s_version, maintenance_window, auto_scaling, lans, labels, annotations, public_ips, ].hash
354
464
  end
355
465
 
356
466
  # Builds the object from hash
@@ -15,42 +15,60 @@ require 'time'
15
15
 
16
16
  module Ionoscloud
17
17
  class KubernetesNodePoolPropertiesForPut
18
+
18
19
  # A Kubernetes Node Pool Name. Valid Kubernetes Node Pool name must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between.
19
20
  attr_accessor :name
20
21
 
22
+
21
23
  # Number of nodes part of the Node Pool
22
24
  attr_accessor :node_count
23
25
 
26
+
24
27
  # The kubernetes version in which a nodepool is running. This imposes restrictions on what kubernetes versions can be run in a cluster's nodepools. Additionally, not all kubernetes versions are viable upgrade targets for all prior versions.
25
28
  attr_accessor :k8s_version
26
29
 
30
+
27
31
  attr_accessor :maintenance_window
28
32
 
33
+
29
34
  attr_accessor :auto_scaling
30
35
 
36
+
31
37
  # array of additional LANs attached to worker nodes
32
38
  attr_accessor :lans
33
39
 
40
+
34
41
  # map of labels attached to node pool
35
42
  attr_accessor :labels
36
43
 
44
+
37
45
  # map of annotations attached to node pool
38
46
  attr_accessor :annotations
39
47
 
48
+
40
49
  # Optional array of reserved public IP addresses to be used by the nodes. IPs must be from same location as the data center used for the node pool. The array must contain one extra IP than maximum number of nodes could be. (nodeCount+1 if fixed node amount or maxNodeCount+1 if auto scaling is used) The extra provided IP Will be used during rebuilding of nodes.
41
50
  attr_accessor :public_ips
42
51
 
43
52
  # Attribute mapping from ruby-style variable name to JSON key.
44
53
  def self.attribute_map
45
54
  {
55
+
46
56
  :'name' => :'name',
57
+
47
58
  :'node_count' => :'nodeCount',
59
+
48
60
  :'k8s_version' => :'k8sVersion',
61
+
49
62
  :'maintenance_window' => :'maintenanceWindow',
63
+
50
64
  :'auto_scaling' => :'autoScaling',
65
+
51
66
  :'lans' => :'lans',
67
+
52
68
  :'labels' => :'labels',
69
+
53
70
  :'annotations' => :'annotations',
71
+
54
72
  :'public_ips' => :'publicIps'
55
73
  }
56
74
  end
@@ -63,14 +81,23 @@ module Ionoscloud
63
81
  # Attribute type mapping.
64
82
  def self.openapi_types
65
83
  {
84
+
66
85
  :'name' => :'String',
86
+
67
87
  :'node_count' => :'Integer',
88
+
68
89
  :'k8s_version' => :'String',
90
+
69
91
  :'maintenance_window' => :'KubernetesMaintenanceWindow',
92
+
70
93
  :'auto_scaling' => :'KubernetesAutoScaling',
94
+
71
95
  :'lans' => :'Array<KubernetesNodePoolLan>',
96
+
72
97
  :'labels' => :'Hash<String, String>',
98
+
73
99
  :'annotations' => :'Hash<String, String>',
100
+
74
101
  :'public_ips' => :'Array<String>'
75
102
  }
76
103
  end
@@ -78,6 +105,15 @@ module Ionoscloud
78
105
  # List of attributes with nullable: true
79
106
  def self.openapi_nullable
80
107
  Set.new([
108
+
109
+
110
+
111
+
112
+
113
+
114
+
115
+
116
+
81
117
  ])
82
118
  end
83
119
 
@@ -95,49 +131,50 @@ module Ionoscloud
95
131
  end
96
132
  h[k.to_sym] = v
97
133
  }
134
+
98
135
 
99
136
  if attributes.key?(:'name')
100
137
  self.name = attributes[:'name']
101
138
  end
102
139
 
140
+
103
141
  if attributes.key?(:'node_count')
104
142
  self.node_count = attributes[:'node_count']
105
143
  end
106
144
 
145
+
107
146
  if attributes.key?(:'k8s_version')
108
147
  self.k8s_version = attributes[:'k8s_version']
109
148
  end
110
149
 
150
+
111
151
  if attributes.key?(:'maintenance_window')
112
152
  self.maintenance_window = attributes[:'maintenance_window']
113
153
  end
114
154
 
155
+
115
156
  if attributes.key?(:'auto_scaling')
116
157
  self.auto_scaling = attributes[:'auto_scaling']
117
158
  end
118
159
 
119
- if attributes.key?(:'lans')
120
- if (value = attributes[:'lans']).is_a?(Array)
121
- self.lans = value
122
- end
160
+
161
+ if attributes.key?(:'lans') && (value = attributes[:'lans']).is_a?(Array)
162
+ self.lans = value
123
163
  end
124
164
 
125
- if attributes.key?(:'labels')
126
- if (value = attributes[:'labels']).is_a?(Hash)
127
- self.labels = value
128
- end
165
+
166
+ if attributes.key?(:'labels') && (value = attributes[:'labels']).is_a?(Hash)
167
+ self.labels = value
129
168
  end
130
169
 
131
- if attributes.key?(:'annotations')
132
- if (value = attributes[:'annotations']).is_a?(Hash)
133
- self.annotations = value
134
- end
170
+
171
+ if attributes.key?(:'annotations') && (value = attributes[:'annotations']).is_a?(Hash)
172
+ self.annotations = value
135
173
  end
136
174
 
137
- if attributes.key?(:'public_ips')
138
- if (value = attributes[:'public_ips']).is_a?(Array)
139
- self.public_ips = value
140
- end
175
+
176
+ if attributes.key?(:'public_ips') && (value = attributes[:'public_ips']).is_a?(Array)
177
+ self.public_ips = value
141
178
  end
142
179
  end
143
180
 
@@ -145,39 +182,66 @@ module Ionoscloud
145
182
  # @return Array for valid properties with the reasons
146
183
  def list_invalid_properties
147
184
  invalid_properties = Array.new
185
+
148
186
  if @name.nil?
149
187
  invalid_properties.push('invalid value for "name", name cannot be nil.')
150
188
  end
151
189
 
190
+
152
191
  if @node_count.nil?
153
192
  invalid_properties.push('invalid value for "node_count", node_count cannot be nil.')
154
193
  end
155
194
 
195
+
196
+
197
+
198
+
199
+
200
+
201
+
156
202
  invalid_properties
157
203
  end
158
204
 
159
205
  # Check to see if the all the properties in the model are valid
160
206
  # @return true if the model is valid
161
207
  def valid?
208
+
162
209
  return false if @name.nil?
210
+
163
211
  return false if @node_count.nil?
212
+
213
+
214
+
215
+
216
+
217
+
218
+
164
219
  true
165
220
  end
166
221
 
222
+
223
+
224
+
225
+
226
+
227
+
228
+
229
+
230
+
167
231
  # Checks equality by comparing each attribute.
168
232
  # @param [Object] Object to be compared
169
233
  def ==(o)
170
234
  return true if self.equal?(o)
171
235
  self.class == o.class &&
172
- name == o.name &&
173
- node_count == o.node_count &&
174
- k8s_version == o.k8s_version &&
175
- maintenance_window == o.maintenance_window &&
176
- auto_scaling == o.auto_scaling &&
177
- lans == o.lans &&
178
- labels == o.labels &&
179
- annotations == o.annotations &&
180
- public_ips == o.public_ips
236
+ name == o.name &&
237
+ node_count == o.node_count &&
238
+ k8s_version == o.k8s_version &&
239
+ maintenance_window == o.maintenance_window &&
240
+ auto_scaling == o.auto_scaling &&
241
+ lans == o.lans &&
242
+ labels == o.labels &&
243
+ annotations == o.annotations &&
244
+ public_ips == o.public_ips
181
245
  end
182
246
 
183
247
  # @see the `==` method