hetzner-api 1.0.6 → 1.1.0

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.
@@ -2,6 +2,7 @@ rvm:
2
2
  - 1.8.7
3
3
  - 1.9.2
4
4
  - 1.9.3
5
+ - 2.0.0
5
6
  - jruby-18mode
6
7
  - jruby-19mode
7
8
  - jruby-head
@@ -1,8 +1,8 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- hetzner-api (1.0.6)
5
- httparty (~> 0.8.3)
4
+ hetzner-api (1.1.0)
5
+ httparty (~> 0.10.0)
6
6
  json
7
7
  thor
8
8
  xml-simple
@@ -10,15 +10,14 @@ PATH
10
10
  GEM
11
11
  remote: http://rubygems.org/
12
12
  specs:
13
- aruba (0.4.11)
14
- childprocess (>= 0.2.3)
13
+ aruba (0.5.1)
14
+ childprocess (~> 0.3.6)
15
15
  cucumber (>= 1.1.1)
16
- ffi (>= 1.0.11)
17
- rspec (>= 2.7.0)
18
- background_process (1.3)
19
- builder (3.0.0)
20
- childprocess (0.3.2)
21
- ffi (~> 1.0.6)
16
+ rspec-expectations (>= 2.7.0)
17
+ builder (3.1.4)
18
+ childprocess (0.3.6)
19
+ ffi (~> 1.0, >= 1.0.6)
20
+ coderay (1.0.8)
22
21
  cucumber (1.2.1)
23
22
  builder (>= 2.1.2)
24
23
  diff-lcs (>= 1.1.3)
@@ -26,40 +25,41 @@ GEM
26
25
  json (>= 1.4.6)
27
26
  diff-lcs (1.1.3)
28
27
  fakeweb (1.3.0)
29
- ffi (1.0.11)
30
- gherkin (2.11.0)
28
+ ffi (1.2.0)
29
+ gherkin (2.11.5)
31
30
  json (>= 1.4.6)
32
- growl (1.0.3)
33
- guard (1.2.3)
31
+ guard (1.5.4)
34
32
  listen (>= 0.4.2)
33
+ lumberjack (>= 1.0.2)
34
+ pry (>= 0.9.10)
35
35
  thor (>= 0.14.6)
36
- guard-rspec (1.2.0)
36
+ guard-rspec (2.3.1)
37
37
  guard (>= 1.1)
38
- httparty (0.8.3)
38
+ rspec (~> 2.11)
39
+ httparty (0.10.0)
39
40
  multi_json (~> 1.0)
40
41
  multi_xml
41
- json (1.7.3)
42
- listen (0.4.7)
43
- rb-fchange (~> 0.0.5)
44
- rb-fsevent (~> 0.9.1)
45
- rb-inotify (~> 0.8.8)
46
- multi_json (1.3.7)
42
+ json (1.7.5)
43
+ listen (0.6.0)
44
+ lumberjack (1.0.2)
45
+ method_source (0.8.1)
46
+ multi_json (1.5.0)
47
47
  multi_xml (0.5.1)
48
- rake (0.9.2.2)
49
- rb-fchange (0.0.5)
50
- ffi
51
- rb-fsevent (0.9.1)
52
- rb-inotify (0.8.8)
53
- ffi (>= 0.5.0)
54
- rspec (2.11.0)
55
- rspec-core (~> 2.11.0)
56
- rspec-expectations (~> 2.11.0)
57
- rspec-mocks (~> 2.11.0)
58
- rspec-core (2.11.1)
59
- rspec-expectations (2.11.2)
48
+ pry (0.9.10)
49
+ coderay (~> 1.0.5)
50
+ method_source (~> 0.8)
51
+ slop (~> 3.3.1)
52
+ rake (10.0.2)
53
+ rspec (2.12.0)
54
+ rspec-core (~> 2.12.0)
55
+ rspec-expectations (~> 2.12.0)
56
+ rspec-mocks (~> 2.12.0)
57
+ rspec-core (2.12.1)
58
+ rspec-expectations (2.12.0)
60
59
  diff-lcs (~> 1.1.3)
61
- rspec-mocks (2.11.1)
62
- thor (0.15.3)
60
+ rspec-mocks (2.12.0)
61
+ slop (3.3.3)
62
+ thor (0.16.0)
63
63
  xml-simple (1.1.2)
64
64
 
65
65
  PLATFORMS
@@ -67,12 +67,10 @@ PLATFORMS
67
67
 
68
68
  DEPENDENCIES
69
69
  aruba
70
- background_process (~> 1.3)
71
- bundler (~> 1.2.2)
70
+ bundler
72
71
  cucumber (~> 1.2.1)
73
- fakeweb
74
- growl
75
- guard-rspec (~> 1.2.0)
72
+ fakeweb (~> 1.3.0)
73
+ guard-rspec (~> 2.3.1)
76
74
  hetzner-api!
77
- rake (~> 0.9.2.2)
78
- rspec (~> 2.11.0)
75
+ rake
76
+ rspec (~> 2.12.0)
@@ -18,20 +18,18 @@ Gem::Specification.new do |s|
18
18
  s.add_runtime_dependency 'jruby-openssl'
19
19
  end
20
20
 
21
- s.add_dependency 'httparty', '~> 0.8.3'
21
+ s.add_dependency 'httparty', '~> 0.10.0'
22
22
  s.add_dependency 'thor'
23
23
  s.add_dependency 'json'
24
24
  s.add_dependency 'xml-simple'
25
25
 
26
- s.add_development_dependency "bundler", "~> 1.2.2"
27
- s.add_development_dependency "rspec", "~> 2.11.0"
28
- s.add_development_dependency "guard-rspec", "~> 1.2.0"
29
- s.add_development_dependency "growl"
30
- s.add_development_dependency "background_process", "~> 1.3"
31
- s.add_development_dependency "fakeweb"
26
+ s.add_development_dependency "bundler"
27
+ s.add_development_dependency "rspec", "~> 2.12.0"
28
+ s.add_development_dependency "guard-rspec", "~> 2.3.1"
29
+ s.add_development_dependency "fakeweb", "~> 1.3.0"
32
30
  s.add_development_dependency "cucumber", "~> 1.2.1"
33
31
  s.add_development_dependency "aruba"
34
- s.add_development_dependency "rake", "~> 0.9.2.2"
32
+ s.add_development_dependency "rake"
35
33
 
36
34
  s.files = `git ls-files`.split("\n")
37
35
  s.executables = `git ls-files`.split("\n").map{|f| f =~ /^bin\/(.*)/ ? $1 : nil}.compact
@@ -1,5 +1,5 @@
1
- require 'thor'
2
1
  require 'ipaddr'
2
+ require 'thor'
3
3
  require 'pp'
4
4
  require 'json'
5
5
  require 'xmlsimple'
@@ -8,30 +8,30 @@ module Hetzner
8
8
  class API
9
9
  class CLI < Thor
10
10
  attr_accessor :api
11
-
11
+
12
12
  desc "boot ACTION [SERVER_IP]", "get available boot options"
13
13
  method_options :username => :string
14
14
  method_options :password => :string
15
15
  method_options :set => 'get'
16
-
16
+
17
17
  def boot(ip = "")
18
18
  require_ip ip
19
19
  generate_api_instance
20
-
20
+
21
21
  case options.set
22
22
  when 'get'
23
23
  require_ip ip
24
24
  result = @api.boot? ip
25
25
  end
26
-
26
+
27
27
  output(result)
28
28
  end
29
-
29
+
30
30
  desc "failover [SERVER_IP] (--to [FAILOVER_IP])", "get/set failover of SERVER_IP (to FAILOVER_IP)"
31
31
  method_options :username => :string
32
32
  method_options :password => :string
33
33
  method_options :to => :string
34
-
34
+
35
35
  def failover(ip = nil)
36
36
  generate_api_instance
37
37
 
@@ -42,19 +42,17 @@ module Hetzner
42
42
  else
43
43
  result = @api.failover? ip
44
44
  end
45
-
45
+
46
46
  output(result)
47
47
  end
48
-
48
+
49
49
  private
50
-
50
+
51
51
  def output(result)
52
52
  @render = 'xml'
53
53
  case @render
54
54
  when 'pp'
55
55
  pp result.parsed_response
56
- when 'yaml'
57
- puts result.parsed_response.to_yaml
58
56
  when 'xml'
59
57
  puts XmlSimple.xml_out result.parsed_response, 'RootName' => 'result', 'AnonymousTag' => '' # dirty
60
58
  when 'json'
@@ -62,13 +60,13 @@ module Hetzner
62
60
  jj JSON.parse result.response.body
63
61
  end
64
62
  end
65
-
63
+
66
64
  def require_ip(ip)
67
65
  ip = IPAddr.new ip
68
66
  rescue ArgumentError
69
67
  raise RequiredArgumentMissingError, "server IP missing!"
70
68
  end
71
-
69
+
72
70
  def generate_api_instance
73
71
  if options.username && options.password
74
72
  @api = Hetzner::API.new options.username, options.password
@@ -1,5 +1,5 @@
1
1
  module Hetzner
2
2
  class API
3
- VERSION = '1.0.6'
3
+ VERSION = '1.1.0'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hetzner-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.6
4
+ version: 1.1.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-11-24 00:00:00.000000000 Z
12
+ date: 2013-01-11 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: httparty
@@ -18,7 +18,7 @@ dependencies:
18
18
  requirements:
19
19
  - - ~>
20
20
  - !ruby/object:Gem::Version
21
- version: 0.8.3
21
+ version: 0.10.0
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
@@ -26,7 +26,7 @@ dependencies:
26
26
  requirements:
27
27
  - - ~>
28
28
  - !ruby/object:Gem::Version
29
- version: 0.8.3
29
+ version: 0.10.0
30
30
  - !ruby/object:Gem::Dependency
31
31
  name: thor
32
32
  requirement: !ruby/object:Gem::Requirement
@@ -80,17 +80,17 @@ dependencies:
80
80
  requirement: !ruby/object:Gem::Requirement
81
81
  none: false
82
82
  requirements:
83
- - - ~>
83
+ - - ! '>='
84
84
  - !ruby/object:Gem::Version
85
- version: 1.2.2
85
+ version: '0'
86
86
  type: :development
87
87
  prerelease: false
88
88
  version_requirements: !ruby/object:Gem::Requirement
89
89
  none: false
90
90
  requirements:
91
- - - ~>
91
+ - - ! '>='
92
92
  - !ruby/object:Gem::Version
93
- version: 1.2.2
93
+ version: '0'
94
94
  - !ruby/object:Gem::Dependency
95
95
  name: rspec
96
96
  requirement: !ruby/object:Gem::Requirement
@@ -98,7 +98,7 @@ dependencies:
98
98
  requirements:
99
99
  - - ~>
100
100
  - !ruby/object:Gem::Version
101
- version: 2.11.0
101
+ version: 2.12.0
102
102
  type: :development
103
103
  prerelease: false
104
104
  version_requirements: !ruby/object:Gem::Requirement
@@ -106,7 +106,7 @@ dependencies:
106
106
  requirements:
107
107
  - - ~>
108
108
  - !ruby/object:Gem::Version
109
- version: 2.11.0
109
+ version: 2.12.0
110
110
  - !ruby/object:Gem::Dependency
111
111
  name: guard-rspec
112
112
  requirement: !ruby/object:Gem::Requirement
@@ -114,7 +114,7 @@ dependencies:
114
114
  requirements:
115
115
  - - ~>
116
116
  - !ruby/object:Gem::Version
117
- version: 1.2.0
117
+ version: 2.3.1
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
@@ -122,31 +122,15 @@ dependencies:
122
122
  requirements:
123
123
  - - ~>
124
124
  - !ruby/object:Gem::Version
125
- version: 1.2.0
126
- - !ruby/object:Gem::Dependency
127
- name: growl
128
- requirement: !ruby/object:Gem::Requirement
129
- none: false
130
- requirements:
131
- - - ! '>='
132
- - !ruby/object:Gem::Version
133
- version: '0'
134
- type: :development
135
- prerelease: false
136
- version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
- requirements:
139
- - - ! '>='
140
- - !ruby/object:Gem::Version
141
- version: '0'
125
+ version: 2.3.1
142
126
  - !ruby/object:Gem::Dependency
143
- name: background_process
127
+ name: fakeweb
144
128
  requirement: !ruby/object:Gem::Requirement
145
129
  none: false
146
130
  requirements:
147
131
  - - ~>
148
132
  - !ruby/object:Gem::Version
149
- version: '1.3'
133
+ version: 1.3.0
150
134
  type: :development
151
135
  prerelease: false
152
136
  version_requirements: !ruby/object:Gem::Requirement
@@ -154,23 +138,7 @@ dependencies:
154
138
  requirements:
155
139
  - - ~>
156
140
  - !ruby/object:Gem::Version
157
- version: '1.3'
158
- - !ruby/object:Gem::Dependency
159
- name: fakeweb
160
- requirement: !ruby/object:Gem::Requirement
161
- none: false
162
- requirements:
163
- - - ! '>='
164
- - !ruby/object:Gem::Version
165
- version: '0'
166
- type: :development
167
- prerelease: false
168
- version_requirements: !ruby/object:Gem::Requirement
169
- none: false
170
- requirements:
171
- - - ! '>='
172
- - !ruby/object:Gem::Version
173
- version: '0'
141
+ version: 1.3.0
174
142
  - !ruby/object:Gem::Dependency
175
143
  name: cucumber
176
144
  requirement: !ruby/object:Gem::Requirement
@@ -208,17 +176,17 @@ dependencies:
208
176
  requirement: !ruby/object:Gem::Requirement
209
177
  none: false
210
178
  requirements:
211
- - - ~>
179
+ - - ! '>='
212
180
  - !ruby/object:Gem::Version
213
- version: 0.9.2.2
181
+ version: '0'
214
182
  type: :development
215
183
  prerelease: false
216
184
  version_requirements: !ruby/object:Gem::Requirement
217
185
  none: false
218
186
  requirements:
219
- - - ~>
187
+ - - ! '>='
220
188
  - !ruby/object:Gem::Version
221
- version: 0.9.2.2
189
+ version: '0'
222
190
  description: A wrapper for Hetzner.de's server management API
223
191
  email:
224
192
  - roland@moriz.de
@@ -318,7 +286,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
318
286
  version: '0'
319
287
  segments:
320
288
  - 0
321
- hash: -1878983214116365365
289
+ hash: 2243244911634323905
322
290
  required_rubygems_version: !ruby/object:Gem::Requirement
323
291
  none: false
324
292
  requirements: