hcloud 0.1.2 → 1.0.3

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 (45) hide show
  1. checksums.yaml +5 -5
  2. data/.github/workflows/ruby.yml +32 -0
  3. data/.gitignore +0 -1
  4. data/.rubocop.yml +28 -10
  5. data/.rubocop_todo.yml +18 -121
  6. data/CHANGELOG.md +60 -2
  7. data/Gemfile +3 -0
  8. data/Gemfile.lock +149 -0
  9. data/README.md +34 -1
  10. data/Rakefile +2 -0
  11. data/bin/console +1 -0
  12. data/hcloud.gemspec +14 -9
  13. data/lib/hcloud/abstract_resource.rb +165 -60
  14. data/lib/hcloud/action.rb +8 -10
  15. data/lib/hcloud/action_resource.rb +3 -29
  16. data/lib/hcloud/client.rb +70 -29
  17. data/lib/hcloud/datacenter.rb +7 -7
  18. data/lib/hcloud/datacenter_resource.rb +6 -31
  19. data/lib/hcloud/entry_loader.rb +186 -20
  20. data/lib/hcloud/errors.rb +2 -0
  21. data/lib/hcloud/floating_ip.rb +18 -29
  22. data/lib/hcloud/floating_ip_resource.rb +15 -30
  23. data/lib/hcloud/image.rb +12 -32
  24. data/lib/hcloud/image_resource.rb +7 -38
  25. data/lib/hcloud/iso.rb +4 -1
  26. data/lib/hcloud/iso_resource.rb +7 -28
  27. data/lib/hcloud/location.rb +3 -9
  28. data/lib/hcloud/location_resource.rb +6 -27
  29. data/lib/hcloud/network.rb +33 -0
  30. data/lib/hcloud/network_resource.rb +25 -0
  31. data/lib/hcloud/pagination.rb +2 -9
  32. data/lib/hcloud/server.rb +37 -70
  33. data/lib/hcloud/server_resource.rb +17 -38
  34. data/lib/hcloud/server_type.rb +3 -10
  35. data/lib/hcloud/server_type_resource.rb +6 -28
  36. data/lib/hcloud/ssh_key.rb +6 -17
  37. data/lib/hcloud/ssh_key_resource.rb +13 -32
  38. data/lib/hcloud/typhoeus_ext.rb +110 -0
  39. data/lib/hcloud/version.rb +3 -1
  40. data/lib/hcloud/volume.rb +32 -0
  41. data/lib/hcloud/volume_resource.rb +29 -0
  42. data/lib/hcloud.rb +31 -5
  43. metadata +56 -22
  44. data/.travis.yml +0 -9
  45. data/lib/hcloud/multi_reply.rb +0 -21
metadata CHANGED
@@ -1,17 +1,18 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hcloud
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 1.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tim Foerster
8
- autorequire:
8
+ - Raphael Pour
9
+ autorequire:
9
10
  bindir: exe
10
11
  cert_chain: []
11
- date: 2018-02-27 00:00:00.000000000 Z
12
+ date: 2022-02-17 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
- name: activesupport
15
+ name: activemodel
15
16
  requirement: !ruby/object:Gem::Requirement
16
17
  requirements:
17
18
  - - ">="
@@ -24,20 +25,34 @@ dependencies:
24
25
  - - ">="
25
26
  - !ruby/object:Gem::Version
26
27
  version: '0'
28
+ - !ruby/object:Gem::Dependency
29
+ name: activesupport
30
+ requirement: !ruby/object:Gem::Requirement
31
+ requirements:
32
+ - - '='
33
+ - !ruby/object:Gem::Version
34
+ version: 6.1.4.4
35
+ type: :development
36
+ prerelease: false
37
+ version_requirements: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - '='
40
+ - !ruby/object:Gem::Version
41
+ version: 6.1.4.4
27
42
  - !ruby/object:Gem::Dependency
28
43
  name: bundler
29
44
  requirement: !ruby/object:Gem::Requirement
30
45
  requirements:
31
- - - "~>"
46
+ - - ">="
32
47
  - !ruby/object:Gem::Version
33
- version: '1.15'
48
+ version: '0'
34
49
  type: :development
35
50
  prerelease: false
36
51
  version_requirements: !ruby/object:Gem::Requirement
37
52
  requirements:
38
- - - "~>"
53
+ - - ">="
39
54
  - !ruby/object:Gem::Version
40
- version: '1.15'
55
+ version: '0'
41
56
  - !ruby/object:Gem::Dependency
42
57
  name: grape
43
58
  requirement: !ruby/object:Gem::Requirement
@@ -56,16 +71,16 @@ dependencies:
56
71
  name: rake
57
72
  requirement: !ruby/object:Gem::Requirement
58
73
  requirements:
59
- - - "~>"
74
+ - - ">="
60
75
  - !ruby/object:Gem::Version
61
- version: '10.0'
76
+ version: '0'
62
77
  type: :development
63
78
  prerelease: false
64
79
  version_requirements: !ruby/object:Gem::Requirement
65
80
  requirements:
66
- - - "~>"
81
+ - - ">="
67
82
  - !ruby/object:Gem::Version
68
- version: '10.0'
83
+ version: '0'
69
84
  - !ruby/object:Gem::Dependency
70
85
  name: rspec
71
86
  requirement: !ruby/object:Gem::Requirement
@@ -95,7 +110,7 @@ dependencies:
95
110
  - !ruby/object:Gem::Version
96
111
  version: '0'
97
112
  - !ruby/object:Gem::Dependency
98
- name: activesupport
113
+ name: activemodel
99
114
  requirement: !ruby/object:Gem::Requirement
100
115
  requirements:
101
116
  - - ">="
@@ -108,6 +123,20 @@ dependencies:
108
123
  - - ">="
109
124
  - !ruby/object:Gem::Version
110
125
  version: '0'
126
+ - !ruby/object:Gem::Dependency
127
+ name: activesupport
128
+ requirement: !ruby/object:Gem::Requirement
129
+ requirements:
130
+ - - '='
131
+ - !ruby/object:Gem::Version
132
+ version: 6.1.4.4
133
+ type: :runtime
134
+ prerelease: false
135
+ version_requirements: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - '='
138
+ - !ruby/object:Gem::Version
139
+ version: 6.1.4.4
111
140
  - !ruby/object:Gem::Dependency
112
141
  name: oj
113
142
  requirement: !ruby/object:Gem::Requirement
@@ -136,20 +165,22 @@ dependencies:
136
165
  - - ">="
137
166
  - !ruby/object:Gem::Version
138
167
  version: '0'
139
- description:
168
+ description:
140
169
  email:
141
170
  - github@moo.gl
171
+ - rubygems@evilcookie.de
142
172
  executables: []
143
173
  extensions: []
144
174
  extra_rdoc_files: []
145
175
  files:
176
+ - ".github/workflows/ruby.yml"
146
177
  - ".gitignore"
147
178
  - ".rspec"
148
179
  - ".rubocop.yml"
149
180
  - ".rubocop_todo.yml"
150
- - ".travis.yml"
151
181
  - CHANGELOG.md
152
182
  - Gemfile
183
+ - Gemfile.lock
153
184
  - README.md
154
185
  - Rakefile
155
186
  - bin/console
@@ -172,7 +203,8 @@ files:
172
203
  - lib/hcloud/iso_resource.rb
173
204
  - lib/hcloud/location.rb
174
205
  - lib/hcloud/location_resource.rb
175
- - lib/hcloud/multi_reply.rb
206
+ - lib/hcloud/network.rb
207
+ - lib/hcloud/network_resource.rb
176
208
  - lib/hcloud/pagination.rb
177
209
  - lib/hcloud/server.rb
178
210
  - lib/hcloud/server_resource.rb
@@ -180,11 +212,14 @@ files:
180
212
  - lib/hcloud/server_type_resource.rb
181
213
  - lib/hcloud/ssh_key.rb
182
214
  - lib/hcloud/ssh_key_resource.rb
215
+ - lib/hcloud/typhoeus_ext.rb
183
216
  - lib/hcloud/version.rb
184
- homepage: https://github.com/tonobo/hcloud
217
+ - lib/hcloud/volume.rb
218
+ - lib/hcloud/volume_resource.rb
219
+ homepage: https://github.com/tonobo/hcloud-ruby
185
220
  licenses: []
186
221
  metadata: {}
187
- post_install_message:
222
+ post_install_message:
188
223
  rdoc_options: []
189
224
  require_paths:
190
225
  - lib
@@ -192,16 +227,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
192
227
  requirements:
193
228
  - - ">="
194
229
  - !ruby/object:Gem::Version
195
- version: '0'
230
+ version: 2.7.0
196
231
  required_rubygems_version: !ruby/object:Gem::Requirement
197
232
  requirements:
198
233
  - - ">="
199
234
  - !ruby/object:Gem::Version
200
235
  version: '0'
201
236
  requirements: []
202
- rubyforge_project:
203
- rubygems_version: 2.5.2.2
204
- signing_key:
237
+ rubygems_version: 3.2.22
238
+ signing_key:
205
239
  specification_version: 4
206
240
  summary: HetznerCloud native Ruby client
207
241
  test_files: []
data/.travis.yml DELETED
@@ -1,9 +0,0 @@
1
- language: ruby
2
- script:
3
- - "bundle exec rspec"
4
- - "bundle exec rubocop"
5
- sudo: false
6
- rvm:
7
- - 2.3
8
- - 2.4
9
- - 2.5
@@ -1,21 +0,0 @@
1
- module Hcloud
2
- class MultiReply
3
- include Enumerable
4
- attr_accessor :cb
5
-
6
- def initialize(j:, pagination: nil)
7
- @j = j
8
- @pagination = pagination
9
- end
10
-
11
- def pagination
12
- @pagination || Pagination.new(@j.first.to_h['meta'].to_h['pagination'], nil, nil)
13
- end
14
-
15
- def each
16
- @cb.call(@j).each do |member|
17
- yield(member)
18
- end
19
- end
20
- end
21
- end