ionoscloud 6.0.1 → 6.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +2 -2
  3. data/docs/CHANGELOG.md +28 -0
  4. data/docs/api/ApplicationLoadBalancersApi.md +1586 -0
  5. data/docs/api/ServersApi.md +3 -1
  6. data/docs/api/TargetGroupsApi.md +516 -0
  7. data/docs/models/ApplicationLoadBalancer.md +28 -0
  8. data/docs/models/ApplicationLoadBalancerEntities.md +18 -0
  9. data/docs/models/ApplicationLoadBalancerForwardingRule.md +26 -0
  10. data/docs/models/ApplicationLoadBalancerForwardingRuleProperties.md +30 -0
  11. data/docs/models/ApplicationLoadBalancerForwardingRulePut.md +24 -0
  12. data/docs/models/ApplicationLoadBalancerForwardingRules.md +30 -0
  13. data/docs/models/ApplicationLoadBalancerHttpRule.md +34 -0
  14. data/docs/models/ApplicationLoadBalancerHttpRuleCondition.md +26 -0
  15. data/docs/models/ApplicationLoadBalancerProperties.md +26 -0
  16. data/docs/models/ApplicationLoadBalancerPut.md +24 -0
  17. data/docs/models/ApplicationLoadBalancers.md +30 -0
  18. data/docs/models/GroupProperties.md +3 -1
  19. data/docs/models/KubernetesClusterProperties.md +0 -2
  20. data/docs/models/KubernetesClusterPropertiesForPost.md +0 -2
  21. data/docs/models/KubernetesNodePoolProperties.md +1 -3
  22. data/docs/models/KubernetesNodePoolPropertiesForPost.md +1 -3
  23. data/docs/models/TargetGroup.md +26 -0
  24. data/docs/models/TargetGroupHealthCheck.md +22 -0
  25. data/docs/models/TargetGroupHttpHealthCheck.md +28 -0
  26. data/docs/models/TargetGroupProperties.md +28 -0
  27. data/docs/models/TargetGroupPut.md +24 -0
  28. data/docs/models/TargetGroupTarget.md +26 -0
  29. data/docs/models/TargetGroups.md +30 -0
  30. data/docs/models/VolumeProperties.md +3 -1
  31. data/lib/ionoscloud/api/application_load_balancers_api.rb +1690 -0
  32. data/lib/ionoscloud/api/servers_api.rb +3 -0
  33. data/lib/ionoscloud/api/target_groups_api.rb +530 -0
  34. data/lib/ionoscloud/api_client.rb +1 -1
  35. data/lib/ionoscloud/configuration.rb +11 -26
  36. data/lib/ionoscloud/models/application_load_balancer.rb +319 -0
  37. data/lib/ionoscloud/models/application_load_balancer_entities.rb +226 -0
  38. data/lib/ionoscloud/models/application_load_balancer_forwarding_rule.rb +302 -0
  39. data/lib/ionoscloud/models/application_load_balancer_forwarding_rule_properties.rb +389 -0
  40. data/lib/ionoscloud/models/application_load_balancer_forwarding_rule_put.rb +285 -0
  41. data/lib/ionoscloud/models/application_load_balancer_forwarding_rules.rb +334 -0
  42. data/lib/ionoscloud/models/application_load_balancer_http_rule.rb +427 -0
  43. data/lib/ionoscloud/models/application_load_balancer_http_rule_condition.rb +355 -0
  44. data/lib/ionoscloud/models/application_load_balancer_properties.rb +314 -0
  45. data/lib/ionoscloud/models/application_load_balancer_put.rb +285 -0
  46. data/lib/ionoscloud/models/application_load_balancers.rb +334 -0
  47. data/lib/ionoscloud/models/group_properties.rb +22 -4
  48. data/lib/ionoscloud/models/kubernetes_cluster_properties.rb +1 -21
  49. data/lib/ionoscloud/models/kubernetes_cluster_properties_for_post.rb +1 -21
  50. data/lib/ionoscloud/models/kubernetes_node_pool_properties.rb +4 -22
  51. data/lib/ionoscloud/models/kubernetes_node_pool_properties_for_post.rb +4 -22
  52. data/lib/ionoscloud/models/target_group.rb +302 -0
  53. data/lib/ionoscloud/models/target_group_health_check.rb +263 -0
  54. data/lib/ionoscloud/models/target_group_http_health_check.rb +373 -0
  55. data/lib/ionoscloud/models/target_group_properties.rb +376 -0
  56. data/lib/ionoscloud/models/target_group_put.rb +285 -0
  57. data/lib/ionoscloud/models/target_group_target.rb +314 -0
  58. data/lib/ionoscloud/models/target_groups.rb +334 -0
  59. data/lib/ionoscloud/models/volume_properties.rb +36 -4
  60. data/lib/ionoscloud/version.rb +1 -1
  61. data/lib/ionoscloud.rb +20 -0
  62. metadata +45 -6
  63. data/lib/test_driver.rb +0 -119
@@ -98,6 +98,10 @@ module Ionoscloud
98
98
  # The UUID of the attached server.
99
99
  attr_accessor :boot_server
100
100
 
101
+
102
+ # Determines whether the volume will be used as a boot volume. Set to `NONE`, the volume will not be used as boot volume. Set to `PRIMARY`, the volume will be used as boot volume and all other volumes must be set to `NONE`. Set to `AUTO` or `null` requires all volumes to be set to `AUTO` or `null`; this will use the legacy behavior, which is to use the volume as a boot volume only if there are no other volumes or cdrom devices.
103
+ attr_accessor :boot_order
104
+
101
105
  class EnumAttributeValidator
102
106
  attr_reader :datatype
103
107
  attr_reader :allowable_values
@@ -164,7 +168,9 @@ module Ionoscloud
164
168
 
165
169
  :'user_data' => :'userData',
166
170
 
167
- :'boot_server' => :'bootServer'
171
+ :'boot_server' => :'bootServer',
172
+
173
+ :'boot_order' => :'bootOrder'
168
174
  }
169
175
  end
170
176
 
@@ -217,7 +223,9 @@ module Ionoscloud
217
223
 
218
224
  :'user_data' => :'String',
219
225
 
220
- :'boot_server' => :'String'
226
+ :'boot_server' => :'String',
227
+
228
+ :'boot_order' => :'String'
221
229
  }
222
230
  end
223
231
 
@@ -243,6 +251,7 @@ module Ionoscloud
243
251
 
244
252
 
245
253
 
254
+
246
255
 
247
256
 
248
257
  ])
@@ -367,6 +376,13 @@ module Ionoscloud
367
376
  if attributes.key?(:'boot_server')
368
377
  self.boot_server = attributes[:'boot_server']
369
378
  end
379
+
380
+
381
+ if attributes.key?(:'boot_order')
382
+ self.boot_order = attributes[:'boot_order']
383
+ else
384
+ self.boot_order = 'AUTO'
385
+ end
370
386
  end
371
387
 
372
388
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -398,6 +414,7 @@ module Ionoscloud
398
414
 
399
415
 
400
416
 
417
+
401
418
  invalid_properties
402
419
  end
403
420
 
@@ -434,6 +451,9 @@ module Ionoscloud
434
451
 
435
452
 
436
453
 
454
+
455
+ boot_order_validator = EnumAttributeValidator.new('String', ["AUTO", "NONE", "PRIMARY"])
456
+ return false unless boot_order_validator.valid?(@boot_order)
437
457
  true
438
458
  end
439
459
 
@@ -498,6 +518,17 @@ module Ionoscloud
498
518
 
499
519
 
500
520
 
521
+
522
+ # Custom attribute writer method checking allowed values (enum).
523
+ # @param [Object] boot_order Object to be assigned
524
+ def boot_order=(boot_order)
525
+ validator = EnumAttributeValidator.new('String', ["AUTO", "NONE", "PRIMARY"])
526
+ unless validator.valid?(boot_order)
527
+ fail ArgumentError, "invalid value for \"boot_order\", must be one of #{validator.allowable_values}."
528
+ end
529
+ @boot_order = boot_order
530
+ end
531
+
501
532
  # Checks equality by comparing each attribute.
502
533
  # @param [Object] Object to be compared
503
534
  def ==(o)
@@ -523,7 +554,8 @@ module Ionoscloud
523
554
  pci_slot == o.pci_slot &&
524
555
  backupunit_id == o.backupunit_id &&
525
556
  user_data == o.user_data &&
526
- boot_server == o.boot_server
557
+ boot_server == o.boot_server &&
558
+ boot_order == o.boot_order
527
559
  end
528
560
 
529
561
  # @see the `==` method
@@ -535,7 +567,7 @@ module Ionoscloud
535
567
  # Calculates hash code according to all attributes.
536
568
  # @return [Integer] Hash code
537
569
  def hash
538
- [name, type, size, availability_zone, image, image_password, image_alias, ssh_keys, bus, licence_type, cpu_hot_plug, ram_hot_plug, nic_hot_plug, nic_hot_unplug, disc_virtio_hot_plug, disc_virtio_hot_unplug, device_number, pci_slot, backupunit_id, user_data, boot_server].hash
570
+ [name, type, size, availability_zone, image, image_password, image_alias, ssh_keys, bus, licence_type, cpu_hot_plug, ram_hot_plug, nic_hot_plug, nic_hot_unplug, disc_virtio_hot_plug, disc_virtio_hot_unplug, device_number, pci_slot, backupunit_id, user_data, boot_server, boot_order].hash
539
571
  end
540
572
 
541
573
  # Builds the object from hash
@@ -11,5 +11,5 @@ OpenAPI Generator version: 5.2.1-SNAPSHOT
11
11
  =end
12
12
 
13
13
  module Ionoscloud
14
- VERSION = '6.0.1'
14
+ VERSION = '6.1.1'
15
15
  end
data/lib/ionoscloud.rb CHANGED
@@ -17,6 +17,17 @@ require 'ionoscloud/version'
17
17
  require 'ionoscloud/configuration'
18
18
 
19
19
  # Models
20
+ require 'ionoscloud/models/application_load_balancer'
21
+ require 'ionoscloud/models/application_load_balancer_entities'
22
+ require 'ionoscloud/models/application_load_balancer_forwarding_rule'
23
+ require 'ionoscloud/models/application_load_balancer_forwarding_rule_properties'
24
+ require 'ionoscloud/models/application_load_balancer_forwarding_rule_put'
25
+ require 'ionoscloud/models/application_load_balancer_forwarding_rules'
26
+ require 'ionoscloud/models/application_load_balancer_http_rule'
27
+ require 'ionoscloud/models/application_load_balancer_http_rule_condition'
28
+ require 'ionoscloud/models/application_load_balancer_properties'
29
+ require 'ionoscloud/models/application_load_balancer_put'
30
+ require 'ionoscloud/models/application_load_balancers'
20
31
  require 'ionoscloud/models/attached_volumes'
21
32
  require 'ionoscloud/models/backup_unit'
22
33
  require 'ionoscloud/models/backup_unit_properties'
@@ -168,6 +179,13 @@ require 'ionoscloud/models/servers'
168
179
  require 'ionoscloud/models/snapshot'
169
180
  require 'ionoscloud/models/snapshot_properties'
170
181
  require 'ionoscloud/models/snapshots'
182
+ require 'ionoscloud/models/target_group'
183
+ require 'ionoscloud/models/target_group_health_check'
184
+ require 'ionoscloud/models/target_group_http_health_check'
185
+ require 'ionoscloud/models/target_group_properties'
186
+ require 'ionoscloud/models/target_group_put'
187
+ require 'ionoscloud/models/target_group_target'
188
+ require 'ionoscloud/models/target_groups'
171
189
  require 'ionoscloud/models/target_port_range'
172
190
  require 'ionoscloud/models/template'
173
191
  require 'ionoscloud/models/template_properties'
@@ -189,6 +207,7 @@ require 'ionoscloud/models/volumes'
189
207
 
190
208
  # APIs
191
209
  require 'ionoscloud/api/_api'
210
+ require 'ionoscloud/api/application_load_balancers_api'
192
211
  require 'ionoscloud/api/backup_units_api'
193
212
  require 'ionoscloud/api/contract_resources_api'
194
213
  require 'ionoscloud/api/data_centers_api'
@@ -208,6 +227,7 @@ require 'ionoscloud/api/private_cross_connects_api'
208
227
  require 'ionoscloud/api/requests_api'
209
228
  require 'ionoscloud/api/servers_api'
210
229
  require 'ionoscloud/api/snapshots_api'
230
+ require 'ionoscloud/api/target_groups_api'
211
231
  require 'ionoscloud/api/templates_api'
212
232
  require 'ionoscloud/api/user_management_api'
213
233
  require 'ionoscloud/api/user_s3_keys_api'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ionoscloud
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.0.1
4
+ version: 6.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - OpenAPI-Generator
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-03-15 00:00:00.000000000 Z
11
+ date: 2022-07-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: typhoeus
@@ -69,6 +69,7 @@ files:
69
69
  - Rakefile
70
70
  - docs/CHANGELOG.md
71
71
  - docs/README.md
72
+ - docs/api/ApplicationLoadBalancersApi.md
72
73
  - docs/api/BackupUnitsApi.md
73
74
  - docs/api/ContractResourcesApi.md
74
75
  - docs/api/DataCentersApi.md
@@ -89,10 +90,22 @@ files:
89
90
  - docs/api/RequestsApi.md
90
91
  - docs/api/ServersApi.md
91
92
  - docs/api/SnapshotsApi.md
93
+ - docs/api/TargetGroupsApi.md
92
94
  - docs/api/TemplatesApi.md
93
95
  - docs/api/UserManagementApi.md
94
96
  - docs/api/UserS3KeysApi.md
95
97
  - docs/api/VolumesApi.md
98
+ - docs/models/ApplicationLoadBalancer.md
99
+ - docs/models/ApplicationLoadBalancerEntities.md
100
+ - docs/models/ApplicationLoadBalancerForwardingRule.md
101
+ - docs/models/ApplicationLoadBalancerForwardingRuleProperties.md
102
+ - docs/models/ApplicationLoadBalancerForwardingRulePut.md
103
+ - docs/models/ApplicationLoadBalancerForwardingRules.md
104
+ - docs/models/ApplicationLoadBalancerHttpRule.md
105
+ - docs/models/ApplicationLoadBalancerHttpRuleCondition.md
106
+ - docs/models/ApplicationLoadBalancerProperties.md
107
+ - docs/models/ApplicationLoadBalancerPut.md
108
+ - docs/models/ApplicationLoadBalancers.md
96
109
  - docs/models/AttachedVolumes.md
97
110
  - docs/models/BackupUnit.md
98
111
  - docs/models/BackupUnitProperties.md
@@ -244,6 +257,13 @@ files:
244
257
  - docs/models/Snapshot.md
245
258
  - docs/models/SnapshotProperties.md
246
259
  - docs/models/Snapshots.md
260
+ - docs/models/TargetGroup.md
261
+ - docs/models/TargetGroupHealthCheck.md
262
+ - docs/models/TargetGroupHttpHealthCheck.md
263
+ - docs/models/TargetGroupProperties.md
264
+ - docs/models/TargetGroupPut.md
265
+ - docs/models/TargetGroupTarget.md
266
+ - docs/models/TargetGroups.md
247
267
  - docs/models/TargetPortRange.md
248
268
  - docs/models/Template.md
249
269
  - docs/models/TemplateProperties.md
@@ -268,6 +288,7 @@ files:
268
288
  - ionoscloud.gemspec
269
289
  - lib/ionoscloud.rb
270
290
  - lib/ionoscloud/api/_api.rb
291
+ - lib/ionoscloud/api/application_load_balancers_api.rb
271
292
  - lib/ionoscloud/api/backup_units_api.rb
272
293
  - lib/ionoscloud/api/contract_resources_api.rb
273
294
  - lib/ionoscloud/api/data_centers_api.rb
@@ -287,6 +308,7 @@ files:
287
308
  - lib/ionoscloud/api/requests_api.rb
288
309
  - lib/ionoscloud/api/servers_api.rb
289
310
  - lib/ionoscloud/api/snapshots_api.rb
311
+ - lib/ionoscloud/api/target_groups_api.rb
290
312
  - lib/ionoscloud/api/templates_api.rb
291
313
  - lib/ionoscloud/api/user_management_api.rb
292
314
  - lib/ionoscloud/api/user_s3_keys_api.rb
@@ -294,6 +316,17 @@ files:
294
316
  - lib/ionoscloud/api_client.rb
295
317
  - lib/ionoscloud/api_error.rb
296
318
  - lib/ionoscloud/configuration.rb
319
+ - lib/ionoscloud/models/application_load_balancer.rb
320
+ - lib/ionoscloud/models/application_load_balancer_entities.rb
321
+ - lib/ionoscloud/models/application_load_balancer_forwarding_rule.rb
322
+ - lib/ionoscloud/models/application_load_balancer_forwarding_rule_properties.rb
323
+ - lib/ionoscloud/models/application_load_balancer_forwarding_rule_put.rb
324
+ - lib/ionoscloud/models/application_load_balancer_forwarding_rules.rb
325
+ - lib/ionoscloud/models/application_load_balancer_http_rule.rb
326
+ - lib/ionoscloud/models/application_load_balancer_http_rule_condition.rb
327
+ - lib/ionoscloud/models/application_load_balancer_properties.rb
328
+ - lib/ionoscloud/models/application_load_balancer_put.rb
329
+ - lib/ionoscloud/models/application_load_balancers.rb
297
330
  - lib/ionoscloud/models/attached_volumes.rb
298
331
  - lib/ionoscloud/models/backup_unit.rb
299
332
  - lib/ionoscloud/models/backup_unit_properties.rb
@@ -445,6 +478,13 @@ files:
445
478
  - lib/ionoscloud/models/snapshot.rb
446
479
  - lib/ionoscloud/models/snapshot_properties.rb
447
480
  - lib/ionoscloud/models/snapshots.rb
481
+ - lib/ionoscloud/models/target_group.rb
482
+ - lib/ionoscloud/models/target_group_health_check.rb
483
+ - lib/ionoscloud/models/target_group_http_health_check.rb
484
+ - lib/ionoscloud/models/target_group_properties.rb
485
+ - lib/ionoscloud/models/target_group_put.rb
486
+ - lib/ionoscloud/models/target_group_target.rb
487
+ - lib/ionoscloud/models/target_groups.rb
448
488
  - lib/ionoscloud/models/target_port_range.rb
449
489
  - lib/ionoscloud/models/template.rb
450
490
  - lib/ionoscloud/models/template_properties.rb
@@ -464,7 +504,6 @@ files:
464
504
  - lib/ionoscloud/models/volume_properties.rb
465
505
  - lib/ionoscloud/models/volumes.rb
466
506
  - lib/ionoscloud/version.rb
467
- - lib/test_driver.rb
468
507
  - sonar-project.properties
469
508
  - spec/api_client_spec.rb
470
509
  - spec/configuration_spec.rb
@@ -473,7 +512,7 @@ homepage: https://openapi-generator.tech
473
512
  licenses:
474
513
  - Unlicense
475
514
  metadata: {}
476
- post_install_message:
515
+ post_install_message:
477
516
  rdoc_options: []
478
517
  require_paths:
479
518
  - lib
@@ -489,7 +528,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
489
528
  version: '0'
490
529
  requirements: []
491
530
  rubygems_version: 3.1.4
492
- signing_key:
531
+ signing_key:
493
532
  specification_version: 4
494
533
  summary: CLOUD API Ruby Gem
495
534
  test_files:
data/lib/test_driver.rb DELETED
@@ -1,119 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- $LOAD_PATH << '.'
4
-
5
- require 'json'
6
-
7
- {
8
- 'ionoscloud' => 'Ionoscloud',
9
- 'ionoscloud-autoscaling' => 'IonoscloudAutoscaling',
10
- 'ionoscloud-dbaas-postgres' => 'IonoscloudDbaasPostgres',
11
- }.each do |module_name, namespace|
12
- begin
13
- require module_name
14
- Ionoscloud = Object.const_get(namespace)
15
- break
16
- rescue LoadError
17
- end
18
- end
19
-
20
- config = Ionoscloud::Configuration.new
21
-
22
- config.username = ENV['IONOS_USERNAME']
23
- config.password = ENV['IONOS_PASSWORD']
24
-
25
- api_client = Ionoscloud::ApiClient.new(config)
26
-
27
- def underscore_string(str)
28
- str.gsub(/::/, '/')
29
- .gsub(/([A-Z]+)([A-Z][a-z])/, '\1_\2')
30
- .gsub(/([a-z\d])([A-Z])/, '\1_\2')
31
- .tr('-', '_')
32
- .downcase
33
- end
34
-
35
- def get_class(operation)
36
- Ionoscloud.constants.select do |c|
37
- Ionoscloud.const_get(c).is_a? Class and Ionoscloud.const_get(c).name.end_with? 'Api'
38
- end.each do |class_symbol|
39
- class_name = class_symbol.to_s
40
- methods = Ionoscloud.const_get(class_name).new.methods - Object.methods
41
- return Ionoscloud.const_get(class_name) if methods.map(&:to_s).include? operation
42
- end
43
- nil
44
- end
45
-
46
- input = gets.chomp
47
- testing_data = JSON.parse(input.gsub('\"', '"'))
48
-
49
- operation = testing_data['operation']
50
-
51
- begin
52
- if operation == 'waitForRequest'
53
- request_id = testing_data['params'][0]['value'].scan(%r{/requests/(\b[0-9a-f]{8}\b-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-\b[0-9a-f]{12}\b)}).last.first
54
- api_client.wait_for_completion(request_id)
55
- puts JSON[{}]
56
- else
57
- method_name = "#{underscore_string(operation)}_with_http_info"
58
-
59
- cls = get_class method_name
60
-
61
- special_params_names = %w[pretty depth XContractNumber contractNumber offset limit start end]
62
-
63
- normal_params, special_params = (testing_data['params'].nil? ? [] : testing_data['params']).partition do |el|
64
- special_params_names.none? do |special_param_name|
65
- special_param_name == el['name']
66
- end
67
- end
68
-
69
- normal_params = normal_params.map { |el| el['value'] }
70
-
71
- special_params = special_params.each_with_object({}) do |current, total|
72
- total[current['name'].to_sym] = current['value']
73
- end
74
-
75
- response, status_code, headers = cls.new(api_client).public_send(
76
- method_name.to_sym,
77
- *normal_params,
78
- special_params
79
- )
80
-
81
- begin
82
- response = response.to_hash
83
- rescue NoMethodError
84
- end
85
-
86
- headers = headers.transform_values do |value|
87
- value.split(',', -1)
88
- end
89
-
90
- puts JSON[{
91
- 'result' => response,
92
- 'httpResponse' => {
93
- 'statusCode' => status_code,
94
- 'headers' => headers.transform_keys(&:downcase),
95
- 'body' => response,
96
- }
97
- }]
98
- end
99
- rescue Ionoscloud::ApiError => e
100
- puts JSON[{
101
- 'result' => 'ApiException occured',
102
- 'httpResponse' => {
103
- 'statusCode' => e.code,
104
- 'headers' => e.response_headers,
105
- 'body' => JSON.parse(e.response_body),
106
- },
107
- 'error' => JSON.parse(e.response_body),
108
- }]
109
- rescue StandardError => e
110
- puts JSON[{
111
- 'result' => 'GeneralException occured',
112
- 'httpResponse' => {
113
- 'statusCode' => nil,
114
- 'headers' => nil,
115
- 'body' => nil,
116
- },
117
- 'error' => e.inspect,
118
- }]
119
- end