ionoscloud 6.0.1 → 6.1.1

Sign up to get free protection for your applications and to get access to all the features.
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