shanesveller-webbynode-api 0.2.2 → 0.2.4
Sign up to get free protection for your applications and to get access to all the features.
- data/README.markdown +11 -0
- data/VERSION +1 -1
- data/bin/webby +10 -2
- data/lib/webbynode-api/dns.rb +30 -0
- data/test/apiobject_test.rb +1 -1
- data/test/bin_test.rb +13 -0
- data/test/client_test.rb +1 -1
- data/test/data/{activate-zone.xml → dns/activate-zone.xml} +0 -0
- data/test/data/{deactivate-zone.xml → dns/deactivate-zone.xml} +0 -0
- data/test/data/{delete-record.xml → dns/delete-record.xml} +0 -0
- data/test/data/{delete-zone.xml → dns/delete-zone.xml} +0 -0
- data/test/data/{dns-1.xml → dns/dns-1.xml} +0 -0
- data/test/data/{dns-records.xml → dns/dns-records.xml} +0 -0
- data/test/data/{dns.xml → dns/dns.xml} +0 -0
- data/test/data/dns/edit-zone.xml +7 -0
- data/test/data/{new-record.xml → dns/new-record.xml} +0 -0
- data/test/data/{new-zone.xml → dns/new-zone.xml} +0 -0
- data/test/data/dns/record-1.xml +11 -0
- data/test/dns_test.rb +76 -19
- data/test/test_helper.rb +1 -2
- data/test/webby_test.rb +2 -2
- data/webbynode-api.gemspec +22 -17
- metadata +20 -16
data/README.markdown
CHANGED
@@ -20,6 +20,17 @@ is currently based on the API guide version 2.
|
|
20
20
|
* DNS record editing
|
21
21
|
* Whatever else WebbyNode gives us in the API :)
|
22
22
|
|
23
|
+
##Dependencies
|
24
|
+
###Runtime
|
25
|
+
* httparty
|
26
|
+
* crack
|
27
|
+
|
28
|
+
###Testing
|
29
|
+
* thoughtbot-shoulda
|
30
|
+
* jeremymcanally-matchy
|
31
|
+
* fakeweb
|
32
|
+
* jgre-monkeyspecdoc
|
33
|
+
|
23
34
|
##Usage and Examples
|
24
35
|
###Command-Line Utility
|
25
36
|
This gem now includes a basic commandline utility named `webby`.
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.2.
|
1
|
+
0.2.4
|
data/bin/webby
CHANGED
@@ -14,7 +14,7 @@ module WebbyNodeTool extend OptiFlagSet
|
|
14
14
|
optional_flag "token"
|
15
15
|
flag "act" do
|
16
16
|
alternate_forms "action","A","a"
|
17
|
-
description "API action to be taken, in the form of <type> <action> <
|
17
|
+
description "API action to be taken, in the form of <type> <action> <argument>"
|
18
18
|
arity 3
|
19
19
|
end
|
20
20
|
optional_flag "verbose" do
|
@@ -48,6 +48,13 @@ target = ARGV.flags.act[2]
|
|
48
48
|
case type
|
49
49
|
when "webby" then
|
50
50
|
case action
|
51
|
+
when "list"
|
52
|
+
webbies = WebbyNode::WebbyList.new(:email => EMAIL, :token => TOKEN).data
|
53
|
+
for webby in webbies
|
54
|
+
puts "Webby - hostname: #{webby['name']} - ip: #{webby['ip']} - status: #{webby['status']}"
|
55
|
+
puts " node: #{webby['node']} - plan: #{webby['plan']}"
|
56
|
+
puts " notes: #{webby['notes']}" if webby['notes']
|
57
|
+
end
|
51
58
|
when "status"
|
52
59
|
puts "Webby Status: #{target}: " + WebbyNode::Webby.new(:email => EMAIL, :token => TOKEN, :hostname => target).status
|
53
60
|
when "restart", "start"
|
@@ -57,7 +64,8 @@ when "webby" then
|
|
57
64
|
puts "Shutting Down Webby: #{target}..."
|
58
65
|
puts "Job ID: " + WebbyNode::Webby.new(:email => EMAIL, :token => TOKEN, :hostname => target).send(action).to_s
|
59
66
|
else
|
60
|
-
puts "Not a valid action for webby #{
|
67
|
+
puts "Not a valid action for a webby: #{action}."
|
68
|
+
puts "Valid options include: " + %w(list status start restart shutdown).join(", ")
|
61
69
|
end
|
62
70
|
else
|
63
71
|
puts "Valid options for type:"
|
data/lib/webbynode-api/dns.rb
CHANGED
@@ -26,6 +26,36 @@ class WebbyNode
|
|
26
26
|
@data = auth_get("/api/xml/dns/#{@id}")["hash"]["zone"]
|
27
27
|
end
|
28
28
|
|
29
|
+
# Edits attributes of an existing DNS zone
|
30
|
+
#
|
31
|
+
# @option new_values [optional, String] :domain Domain name for the DNS zone
|
32
|
+
# @option new_values [optional, Integer] :ttl Time To Live for the DNS zone
|
33
|
+
# @option new_values [optional, String] :status Whether or not to serve the zone.
|
34
|
+
# Valid values are Active or Inactive.
|
35
|
+
# @raise [ArgumentError] Raises ArgumentError if an invalid value is passed for
|
36
|
+
# :status.
|
37
|
+
# @return [Hash] returns a Hash with String keys of the newly-edited zone's data
|
38
|
+
# @example Change a zone's TTL
|
39
|
+
# @zone = WebbyNode::DNS::Zone.new(:email => @email, :token => @token, :id => @id)
|
40
|
+
# @zone.ttl # => 86400
|
41
|
+
# @zone.edit(:ttl => 14400)
|
42
|
+
# @zone.ttl # => 14400
|
43
|
+
# @example Change a zone's domain name, TTL and activate it
|
44
|
+
# @zone = WebbyNode::DNS::Zone.new(:email => @email, :token => @token, :id => @id)
|
45
|
+
# @zone.edit(:domain => "newurl.com.", :status => "Active", :ttl => 86600)
|
46
|
+
def edit(new_values = {})
|
47
|
+
if new_values[:status]
|
48
|
+
raise ArgumentError, ":status must be Active or Inactive" unless %w(Active Inactive).include?(new_values[:status])
|
49
|
+
end
|
50
|
+
new_values.reject! {|key, value| %w(domain ttl status).include?(key) == false }
|
51
|
+
for key in new_values.keys
|
52
|
+
new_values["zone[#{key.to_s}]"] = new_values[key]
|
53
|
+
new_values.delete(key)
|
54
|
+
end
|
55
|
+
new_values.merge!(:email => @email, :token => @token)
|
56
|
+
@data = self.class.auth_post("/api/xml/dns/#{@id}", :query => new_values)["hash"]
|
57
|
+
end
|
58
|
+
|
29
59
|
# Activates a DNS zone in WebbyNode's DNS servers
|
30
60
|
#
|
31
61
|
# @since 0.1.2
|
data/test/apiobject_test.rb
CHANGED
data/test/bin_test.rb
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
class WebbyNodeAPIObjectTest < Test::Unit::TestCase
|
4
|
+
context "using the commandline tool" do
|
5
|
+
context "when listing webbies" do
|
6
|
+
setup do
|
7
|
+
@input = "-a webby list"
|
8
|
+
bin_path = File.join(File.dirname(__FILE__), '..', 'bin', 'webby')
|
9
|
+
@output = `#{bin_path} #{@input}`
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
data/test/client_test.rb
CHANGED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/test/dns_test.rb
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
require 'test_helper'
|
2
2
|
|
3
3
|
class WebbyNodeDNSTest < Test::Unit::TestCase
|
4
|
-
context "fetching all DNS data from API" do
|
4
|
+
context "when fetching all DNS data from API" do
|
5
5
|
setup do
|
6
6
|
email = "example@email.com"
|
7
7
|
token = "123456"
|
8
|
-
data_path = File.join(File.dirname(__FILE__), "data")
|
8
|
+
data_path = File.join(File.dirname(__FILE__), "data", "dns")
|
9
9
|
FakeWeb.clean_registry
|
10
10
|
FakeWeb.register_uri(:get, /^https:\/\/manager\.webbynode\.com\/api\/xml\/dns\?.+/i, :body => File.read("#{data_path}/dns.xml"))
|
11
11
|
@zones = WebbyNode::DNS::ZoneList.new(:email => email, :token => token)
|
@@ -25,16 +25,19 @@ class WebbyNodeDNSTest < Test::Unit::TestCase
|
|
25
25
|
zone["ttl"].should == 86400
|
26
26
|
end
|
27
27
|
end
|
28
|
-
context "fetching DNS data from API with id" do
|
28
|
+
context "when fetching DNS data from API with id" do
|
29
29
|
setup do
|
30
30
|
email = "example@email.com"
|
31
31
|
token = "123456"
|
32
32
|
id = 1
|
33
|
-
data_path = File.join(File.dirname(__FILE__), "data")
|
33
|
+
data_path = File.join(File.dirname(__FILE__), "data", "dns")
|
34
34
|
FakeWeb.clean_registry
|
35
35
|
FakeWeb.register_uri(:get, /^https:\/\/manager\.webbynode\.com\/api\/xml\/dns\/\d+\?.+/i, :body => File.read("#{data_path}/dns-1.xml"))
|
36
36
|
@dns = WebbyNode::DNS::Zone.new(:email => email, :token => token, :id => id)
|
37
37
|
end
|
38
|
+
should "raise ArgumentError if :id is absent" do
|
39
|
+
assert_raise(ArgumentError, ":id is a required argument"){ WebbyNode::DNS::Zone.new(:email => @email, :token => @token) }
|
40
|
+
end
|
38
41
|
should "return domain name, status, id and TTL" do
|
39
42
|
@dns.domain.should == "example.com."
|
40
43
|
@dns.id.should == 1
|
@@ -42,13 +45,13 @@ class WebbyNodeDNSTest < Test::Unit::TestCase
|
|
42
45
|
@dns.status.should == "Active"
|
43
46
|
end
|
44
47
|
end
|
45
|
-
context "creating a new DNS zone" do
|
48
|
+
context "when creating a new DNS zone" do
|
46
49
|
setup do
|
47
50
|
@email = "example@email.com"
|
48
51
|
@token = "123456"
|
49
52
|
@domain = "example.com."
|
50
53
|
@ttl = 86400
|
51
|
-
data_path = File.join(File.dirname(__FILE__), "data")
|
54
|
+
data_path = File.join(File.dirname(__FILE__), "data", "dns")
|
52
55
|
FakeWeb.clean_registry
|
53
56
|
FakeWeb.register_uri(:post, /^https:\/\/manager\.webbynode\.com\/api\/xml\/dns\/new\?.+/i, :body => File.read("#{data_path}/new-zone.xml"))
|
54
57
|
end
|
@@ -62,7 +65,7 @@ class WebbyNodeDNSTest < Test::Unit::TestCase
|
|
62
65
|
assert_raise(ArgumentError, ":domain and :ttl are required arguments"){ WebbyNode::DNS::Zone.create_zone(:email => @email, :token => @token, :domain => @domain) }
|
63
66
|
end
|
64
67
|
should "raise ArgumentError if :status is not a valid option" do
|
65
|
-
assert_raise(ArgumentError, ":
|
68
|
+
assert_raise(ArgumentError, ":status can only be Active or Inactive"){ WebbyNode::DNS::Zone.create_zone(:email => @email, :token => @token, :ttl => @ttl, :status => "Not active") }
|
66
69
|
assert_nothing_raised(ArgumentError){ WebbyNode::DNS::Zone.create_zone(:email => @email, :token => @token, :domain => @domain, :ttl => @ttl, :status => "Active") }
|
67
70
|
assert_nothing_raised(ArgumentError){ WebbyNode::DNS::Zone.create_zone(:email => @email, :token => @token, :domain => @domain, :ttl => @ttl, :status => "Inactive") }
|
68
71
|
assert_nothing_raised(ArgumentError){ WebbyNode::DNS::Zone.create_zone(:email => @email, :token => @token, :domain => @domain, :ttl => @ttl, :status => nil) }
|
@@ -74,12 +77,47 @@ class WebbyNodeDNSTest < Test::Unit::TestCase
|
|
74
77
|
@new_zone["ttl"].should == 86400
|
75
78
|
end
|
76
79
|
end
|
77
|
-
context "
|
80
|
+
context "when editing a DNS zone" do
|
81
|
+
setup do
|
82
|
+
@email = "example@email.com"
|
83
|
+
@token = "123456"
|
84
|
+
@domain = "example.com."
|
85
|
+
@id = 1
|
86
|
+
data_path = File.join(File.dirname(__FILE__), "data", "dns")
|
87
|
+
FakeWeb.clean_registry
|
88
|
+
FakeWeb.register_uri(:get, /^https:\/\/manager\.webbynode\.com\/api\/xml\/dns\/\d+\?.+/i, :body => File.read("#{data_path}/dns-1.xml"))
|
89
|
+
FakeWeb.register_uri(:post, /^https:\/\/manager\.webbynode\.com\/api\/xml\/dns\/\d+\?.+/i, :body => File.read("#{data_path}/edit-zone.xml"))
|
90
|
+
end
|
91
|
+
should "raise ArgumentError if API information isn't present" do
|
92
|
+
assert_raise(ArgumentError,":email and :token are required arguments for API access"){ WebbyNode::DNS::Zone.new(:token => @token, :domain => @domain, :id => @id) }
|
93
|
+
assert_raise(ArgumentError,":email and :token are required arguments for API access"){ WebbyNode::DNS::Zone.new(:email => @email, :domain => @domain, :id => @id) }
|
94
|
+
assert_raise(ArgumentError,":email and :token are required arguments for API access"){ WebbyNode::DNS::Zone.new(:domain => @domain, :id => @id) }
|
95
|
+
end
|
96
|
+
should "raise ArgumentError if :status is not a valid option" do
|
97
|
+
assert_raise(ArgumentError, ":status can only be Active or Inactive"){ WebbyNode::DNS::Zone.create_zone(:email => @email, :token => @token, :ttl => @ttl, :status => "Not active") }
|
98
|
+
assert_nothing_raised(ArgumentError){ WebbyNode::DNS::Zone.new(:email => @email, :token => @token, :id => @id) }
|
99
|
+
assert_nothing_raised(ArgumentError){ WebbyNode::DNS::Zone.new(:email => @email, :token => @token, :id => @id) }
|
100
|
+
assert_nothing_raised(ArgumentError){ WebbyNode::DNS::Zone.new(:email => @email, :token => @token, :id => @id) }
|
101
|
+
end
|
102
|
+
should "alter information on API and update the object to reflect changes" do
|
103
|
+
@zone = WebbyNode::DNS::Zone.new(:email => @email, :token => @token, :id => @id)
|
104
|
+
@zone.id.should == @id
|
105
|
+
@zone.domain.should == "example.com."
|
106
|
+
@zone.ttl.should == 86400
|
107
|
+
@zone.status.should == "Active"
|
108
|
+
@zone.edit(:domain => "new-example.com.", :ttl => 14400, :status => "Inactive")
|
109
|
+
@zone.id.should == @id
|
110
|
+
@zone.domain.should == "new-example.com."
|
111
|
+
@zone.ttl.should == 14400
|
112
|
+
@zone.status.should == "Inactive"
|
113
|
+
end
|
114
|
+
end
|
115
|
+
context "when deleting a DNS zone" do
|
78
116
|
setup do
|
79
117
|
@email = "example@email.com"
|
80
118
|
@token = "123456"
|
81
119
|
@id = 171
|
82
|
-
data_path = File.join(File.dirname(__FILE__), "data")
|
120
|
+
data_path = File.join(File.dirname(__FILE__), "data", "dns")
|
83
121
|
FakeWeb.clean_registry
|
84
122
|
FakeWeb.register_uri(:post, /^https:\/\/manager\.webbynode\.com\/api\/xml\/dns\/\d+\/delete\?.+/i, :body => File.read("#{data_path}/delete-zone.xml"))
|
85
123
|
end
|
@@ -87,14 +125,14 @@ class WebbyNodeDNSTest < Test::Unit::TestCase
|
|
87
125
|
WebbyNode::DNS::Zone.delete_zone(:email => @email, :token => @token, :id => @id)
|
88
126
|
end
|
89
127
|
end
|
90
|
-
context "activating
|
128
|
+
context "when activating or deactivating a DNS zone" do
|
91
129
|
setup do
|
92
130
|
@email = "example@email.com"
|
93
131
|
@token = "123456"
|
94
132
|
@id = 171
|
95
133
|
end
|
96
134
|
should "raise RuntimeError if the action is unsuccesful" do
|
97
|
-
data_path = File.join(File.dirname(__FILE__), "data")
|
135
|
+
data_path = File.join(File.dirname(__FILE__), "data", "dns")
|
98
136
|
FakeWeb.clean_registry
|
99
137
|
FakeWeb.register_uri(:get, /^https:\/\/manager\.webbynode\.com\/api\/xml\/dns\/\d+\?.+/i, :body => File.read("#{data_path}/dns-1.xml"))
|
100
138
|
FakeWeb.register_uri(:post, /^https:\/\/manager\.webbynode\.com\/api\/xml\/dns\/\d+\?.+/i, :body => File.read("#{data_path}/deactivate-zone.xml"))
|
@@ -105,7 +143,7 @@ class WebbyNodeDNSTest < Test::Unit::TestCase
|
|
105
143
|
assert_raise(RuntimeError, "Unable to deactivate zone"){ WebbyNode::DNS::Zone.new(:email => @email, :token => @token, :id => @id).deactivate }
|
106
144
|
end
|
107
145
|
should "return the new status when activating or deactivating" do
|
108
|
-
data_path = File.join(File.dirname(__FILE__), "data")
|
146
|
+
data_path = File.join(File.dirname(__FILE__), "data", "dns")
|
109
147
|
FakeWeb.clean_registry
|
110
148
|
FakeWeb.register_uri(:get, /^https:\/\/manager\.webbynode\.com\/api\/xml\/dns\/\d+\?.+/i, :body => File.read("#{data_path}/dns-1.xml"))
|
111
149
|
FakeWeb.register_uri(:post, /^https:\/\/manager\.webbynode\.com\/api\/xml\/dns\/\d+\?.+/i, :body => File.read("#{data_path}/activate-zone.xml"))
|
@@ -116,12 +154,12 @@ class WebbyNodeDNSTest < Test::Unit::TestCase
|
|
116
154
|
WebbyNode::DNS::Zone.new(:email => @email, :token => @token, :id => @id).deactivate.should == "Inactive"
|
117
155
|
end
|
118
156
|
end
|
119
|
-
context "listing a DNS zone's records" do
|
157
|
+
context "when listing a DNS zone's records" do
|
120
158
|
setup do
|
121
159
|
@email = "example@email.com"
|
122
160
|
@token = "123456"
|
123
161
|
@id = 1
|
124
|
-
data_path = File.join(File.dirname(__FILE__), "data")
|
162
|
+
data_path = File.join(File.dirname(__FILE__), "data", "dns")
|
125
163
|
FakeWeb.clean_registry
|
126
164
|
FakeWeb.register_uri(:get, /^https:\/\/manager\.webbynode\.com\/api\/xml\/dns\/\d+\/records\?.+/i, :body => File.read("#{data_path}/dns-records.xml"))
|
127
165
|
end
|
@@ -141,12 +179,12 @@ class WebbyNodeDNSTest < Test::Unit::TestCase
|
|
141
179
|
record["type"].should == "A"
|
142
180
|
end
|
143
181
|
end
|
144
|
-
context "creating a DNS record" do
|
182
|
+
context "when creating a DNS record" do
|
145
183
|
setup do
|
146
184
|
@email = "example@email.com"
|
147
185
|
@token = "123456"
|
148
186
|
@id = 1
|
149
|
-
data_path = File.join(File.dirname(__FILE__), "data")
|
187
|
+
data_path = File.join(File.dirname(__FILE__), "data", "dns")
|
150
188
|
FakeWeb.clean_registry
|
151
189
|
FakeWeb.register_uri(:post, /^https:\/\/manager\.webbynode\.com\/api\/xml\/dns\/\d+\/records\/new\?.+/i, :body => File.read("#{data_path}/new-record.xml"))
|
152
190
|
end
|
@@ -178,14 +216,33 @@ class WebbyNodeDNSTest < Test::Unit::TestCase
|
|
178
216
|
@new_record
|
179
217
|
end
|
180
218
|
end
|
181
|
-
context "fetching a DNS record" do
|
219
|
+
context "when fetching a DNS record" do
|
220
|
+
setup do
|
221
|
+
@email = "example@email.com"
|
222
|
+
@token = "123456"
|
223
|
+
@id = 103
|
224
|
+
data_path = File.join(File.dirname(__FILE__), "data", "dns")
|
225
|
+
FakeWeb.clean_registry
|
226
|
+
FakeWeb.register_uri(:get, /^https:\/\/manager\.webbynode\.com\/api\/xml\/records\/\d+\?.+/i, :body => File.read("#{data_path}/record-1.xml"))
|
227
|
+
end
|
228
|
+
should "raise ArgumentError if :id argument is absent" do
|
229
|
+
assert_raise(ArgumentError, ":id is a required argument"){ WebbyNode::DNS::Record.new(:email => @email, :token => @token, :id => nil)}
|
230
|
+
assert_nothing_raised { WebbyNode::DNS::Record.new(:email => @email, :token => @token, :id => @id)}
|
231
|
+
end
|
232
|
+
should "set @data to a Hash of record information" do
|
233
|
+
@record = WebbyNode::DNS::Record.new(:email => @email, :token => @token, :id => @id)
|
234
|
+
@record.data.is_a?(Hash).should be(true)
|
235
|
+
for key in %w(type ttl aux data name id)
|
236
|
+
@record.data.keys.include?(key).should be(true)
|
237
|
+
end
|
238
|
+
end
|
182
239
|
end
|
183
|
-
context "deleting a DNS record" do
|
240
|
+
context "when deleting a DNS record" do
|
184
241
|
setup do
|
185
242
|
@email = "example@email.com"
|
186
243
|
@token = "123456"
|
187
244
|
@id = 171
|
188
|
-
data_path = File.join(File.dirname(__FILE__), "data")
|
245
|
+
data_path = File.join(File.dirname(__FILE__), "data", "dns")
|
189
246
|
FakeWeb.clean_registry
|
190
247
|
FakeWeb.register_uri(:post, /^https:\/\/manager\.webbynode\.com\/api\/xml\/records\/\d+\/delete\?.+/i, :body => File.read("#{data_path}/delete-record.xml"))
|
191
248
|
end
|
data/test/test_helper.rb
CHANGED
data/test/webby_test.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'test_helper'
|
2
2
|
|
3
3
|
class WebbyNodeWebbyTest < Test::Unit::TestCase
|
4
|
-
context "fetching webby data from API" do
|
4
|
+
context "when fetching webby data from API" do
|
5
5
|
setup do
|
6
6
|
email = "example@email.com"
|
7
7
|
token = "123456"
|
@@ -33,7 +33,7 @@ class WebbyNodeWebbyTest < Test::Unit::TestCase
|
|
33
33
|
assert_raise(ArgumentError, "No such action possible on a Webby."){ @webby.restart }
|
34
34
|
end
|
35
35
|
end
|
36
|
-
context "fetching webbies data from API" do
|
36
|
+
context "when fetching webbies data from API" do
|
37
37
|
setup do
|
38
38
|
email = "example@email.com"
|
39
39
|
token = "123456"
|
data/webbynode-api.gemspec
CHANGED
@@ -2,11 +2,11 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = %q{webbynode-api}
|
5
|
-
s.version = "0.2.
|
5
|
+
s.version = "0.2.4"
|
6
6
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
8
8
|
s.authors = ["Shane Sveller"]
|
9
|
-
s.date = %q{2009-07-
|
9
|
+
s.date = %q{2009-07-17}
|
10
10
|
s.default_executable = %q{webby}
|
11
11
|
s.email = %q{shanesveller@gmail.com}
|
12
12
|
s.executables = ["webby"]
|
@@ -26,18 +26,21 @@ Gem::Specification.new do |s|
|
|
26
26
|
"lib/webbynode-api/data.rb",
|
27
27
|
"lib/webbynode-api/dns.rb",
|
28
28
|
"test/apiobject_test.rb",
|
29
|
+
"test/bin_test.rb",
|
29
30
|
"test/client_test.rb",
|
30
|
-
"test/data/activate-zone.xml",
|
31
31
|
"test/data/bad-auth.xml",
|
32
32
|
"test/data/client.xml",
|
33
|
-
"test/data/
|
34
|
-
"test/data/
|
35
|
-
"test/data/delete-
|
36
|
-
"test/data/dns-
|
37
|
-
"test/data/dns-
|
38
|
-
"test/data/dns.xml",
|
39
|
-
"test/data/
|
40
|
-
"test/data/
|
33
|
+
"test/data/dns/activate-zone.xml",
|
34
|
+
"test/data/dns/deactivate-zone.xml",
|
35
|
+
"test/data/dns/delete-record.xml",
|
36
|
+
"test/data/dns/delete-zone.xml",
|
37
|
+
"test/data/dns/dns-1.xml",
|
38
|
+
"test/data/dns/dns-records.xml",
|
39
|
+
"test/data/dns/dns.xml",
|
40
|
+
"test/data/dns/edit-zone.xml",
|
41
|
+
"test/data/dns/new-record.xml",
|
42
|
+
"test/data/dns/new-zone.xml",
|
43
|
+
"test/data/dns/record-1.xml",
|
41
44
|
"test/data/webbies.xml",
|
42
45
|
"test/data/webby-reboot.xml",
|
43
46
|
"test/data/webby-shutdown.xml",
|
@@ -51,22 +54,24 @@ Gem::Specification.new do |s|
|
|
51
54
|
"test/webby_test.rb",
|
52
55
|
"webbynode-api.gemspec"
|
53
56
|
]
|
57
|
+
s.has_rdoc = true
|
54
58
|
s.homepage = %q{http://github.com/shanesveller/webbynode-api}
|
55
59
|
s.rdoc_options = ["--charset=UTF-8"]
|
56
60
|
s.require_paths = ["lib"]
|
57
|
-
s.rubygems_version = %q{1.3.
|
61
|
+
s.rubygems_version = %q{1.3.1}
|
58
62
|
s.summary = %q{wraps the WebbyNode API into nice Ruby objects}
|
59
63
|
s.test_files = [
|
60
|
-
"test/
|
61
|
-
"test/
|
62
|
-
"test/dns_test.rb",
|
64
|
+
"test/apiobject_test.rb",
|
65
|
+
"test/bin_test.rb",
|
63
66
|
"test/client_test.rb",
|
64
|
-
"test/
|
67
|
+
"test/dns_test.rb",
|
68
|
+
"test/test_helper.rb",
|
69
|
+
"test/webby_test.rb"
|
65
70
|
]
|
66
71
|
|
67
72
|
if s.respond_to? :specification_version then
|
68
73
|
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
69
|
-
s.specification_version =
|
74
|
+
s.specification_version = 2
|
70
75
|
|
71
76
|
if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
|
72
77
|
s.add_runtime_dependency(%q<httparty>, [">= 0.4.3"])
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: shanesveller-webbynode-api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Shane Sveller
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-07-
|
12
|
+
date: 2009-07-17 00:00:00 -07:00
|
13
13
|
default_executable: webby
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -53,18 +53,21 @@ files:
|
|
53
53
|
- lib/webbynode-api/data.rb
|
54
54
|
- lib/webbynode-api/dns.rb
|
55
55
|
- test/apiobject_test.rb
|
56
|
+
- test/bin_test.rb
|
56
57
|
- test/client_test.rb
|
57
|
-
- test/data/activate-zone.xml
|
58
58
|
- test/data/bad-auth.xml
|
59
59
|
- test/data/client.xml
|
60
|
-
- test/data/
|
61
|
-
- test/data/
|
62
|
-
- test/data/delete-
|
63
|
-
- test/data/dns-
|
64
|
-
- test/data/dns-
|
65
|
-
- test/data/dns.xml
|
66
|
-
- test/data/
|
67
|
-
- test/data/
|
60
|
+
- test/data/dns/activate-zone.xml
|
61
|
+
- test/data/dns/deactivate-zone.xml
|
62
|
+
- test/data/dns/delete-record.xml
|
63
|
+
- test/data/dns/delete-zone.xml
|
64
|
+
- test/data/dns/dns-1.xml
|
65
|
+
- test/data/dns/dns-records.xml
|
66
|
+
- test/data/dns/dns.xml
|
67
|
+
- test/data/dns/edit-zone.xml
|
68
|
+
- test/data/dns/new-record.xml
|
69
|
+
- test/data/dns/new-zone.xml
|
70
|
+
- test/data/dns/record-1.xml
|
68
71
|
- test/data/webbies.xml
|
69
72
|
- test/data/webby-reboot.xml
|
70
73
|
- test/data/webby-shutdown.xml
|
@@ -77,7 +80,7 @@ files:
|
|
77
80
|
- test/test_helper.rb
|
78
81
|
- test/webby_test.rb
|
79
82
|
- webbynode-api.gemspec
|
80
|
-
has_rdoc:
|
83
|
+
has_rdoc: true
|
81
84
|
homepage: http://github.com/shanesveller/webbynode-api
|
82
85
|
post_install_message:
|
83
86
|
rdoc_options:
|
@@ -101,11 +104,12 @@ requirements: []
|
|
101
104
|
rubyforge_project:
|
102
105
|
rubygems_version: 1.2.0
|
103
106
|
signing_key:
|
104
|
-
specification_version:
|
107
|
+
specification_version: 2
|
105
108
|
summary: wraps the WebbyNode API into nice Ruby objects
|
106
109
|
test_files:
|
110
|
+
- test/apiobject_test.rb
|
111
|
+
- test/bin_test.rb
|
112
|
+
- test/client_test.rb
|
113
|
+
- test/dns_test.rb
|
107
114
|
- test/test_helper.rb
|
108
115
|
- test/webby_test.rb
|
109
|
-
- test/dns_test.rb
|
110
|
-
- test/client_test.rb
|
111
|
-
- test/apiobject_test.rb
|