squall 1.2.0beta1 → 1.2.1beta1
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.
- data/Rakefile +0 -14
- data/lib/squall/support/base.rb +4 -1
- data/lib/squall/support/version.rb +1 -1
- data/lib/squall/virtual_machine.rb +4 -1
- data/spec/squall/firewall_rule_spec.rb +19 -23
- data/spec/squall/virtual_machine_spec.rb +19 -18
- data/squall.gemspec +5 -9
- metadata +24 -44
data/Rakefile
CHANGED
@@ -7,23 +7,9 @@ rescue LoadError
|
|
7
7
|
exit
|
8
8
|
end
|
9
9
|
|
10
|
-
begin
|
11
|
-
require 'metric_fu'
|
12
|
-
MetricFu::Configuration.run do |config|
|
13
|
-
config.rcov[:rcov_opts] << "-Ispec"
|
14
|
-
end
|
15
|
-
rescue LoadError
|
16
|
-
end
|
17
|
-
|
18
10
|
RSpec::Core::RakeTask.new :spec
|
19
11
|
Bundler::GemHelper.install_tasks
|
20
12
|
|
21
|
-
desc "Run all specs with rcov"
|
22
|
-
RSpec::Core::RakeTask.new(:rcov) do |t|
|
23
|
-
t.rcov = true
|
24
|
-
t.rcov_opts = %w{--exclude osx\/objc,gems\/,spec\/,features\/}
|
25
|
-
end
|
26
|
-
|
27
13
|
desc "Open an irb session preloaded with this library"
|
28
14
|
task :console do
|
29
15
|
sh "irb -rubygems -r ./lib/squall.rb -I ./lib"
|
data/lib/squall/support/base.rb
CHANGED
@@ -51,10 +51,13 @@ module Squall
|
|
51
51
|
c.response :on_app_errors
|
52
52
|
c.response :json
|
53
53
|
c.adapter :net_http
|
54
|
+
if Squall.config[:debug]
|
55
|
+
c.use Faraday::Response::Logger
|
56
|
+
end
|
54
57
|
end
|
55
58
|
response = conn.send(request_method, path)
|
56
59
|
@success = (200..207).include?(response.env[:status])
|
57
|
-
@result =
|
60
|
+
@result = response.body
|
58
61
|
end
|
59
62
|
|
60
63
|
# Raises an error if a request is made without first calling Squall.config
|
@@ -43,6 +43,8 @@ module Squall
|
|
43
43
|
# * +note+ - Comment that can be set by the user of the virtual machine
|
44
44
|
# * +allowed_hot_migrate+ - Set to '1' to allow hot migration
|
45
45
|
# * +initial_root_password+ - Root password for the virtual machine. 6-31 characters consisting of letters, numbers, '-' and '_'
|
46
|
+
# * hypervisor_group_id - the ID of the hypervisor zone in which the VM will be created. Optional: if no hypervisor zone is set, the VM will be built in any available hypervisor zone.
|
47
|
+
|
46
48
|
#
|
47
49
|
# ==== Example
|
48
50
|
#
|
@@ -70,7 +72,8 @@ module Squall
|
|
70
72
|
:admin_note,
|
71
73
|
:note,
|
72
74
|
:allowed_hot_migrate,
|
73
|
-
:initial_root_password
|
75
|
+
:initial_root_password,
|
76
|
+
:hypervisor_group_id
|
74
77
|
]
|
75
78
|
params.required(required).accepts(optional).validate! options
|
76
79
|
response = request(:post, '/virtual_machines.json', default_params(options))
|
@@ -8,11 +8,11 @@ describe Squall::FirewallRule do
|
|
8
8
|
|
9
9
|
describe "#list" do
|
10
10
|
use_vcr_cassette "firewall_rule/list"
|
11
|
-
|
11
|
+
|
12
12
|
it "requires vm id" do
|
13
13
|
expect { @firewall_rule.list }.to raise_error(ArgumentError)
|
14
14
|
end
|
15
|
-
|
15
|
+
|
16
16
|
it "returns a list of firewall rules for a vm" do
|
17
17
|
firewall_rules = @firewall_rule.list(1)
|
18
18
|
firewall_rules.should be_an(Array)
|
@@ -23,24 +23,24 @@ describe Squall::FirewallRule do
|
|
23
23
|
firewall_rules.all?.should be_true
|
24
24
|
end
|
25
25
|
end
|
26
|
-
|
26
|
+
|
27
27
|
describe "#create" do
|
28
28
|
use_vcr_cassette "firewall_rule/create"
|
29
29
|
it "requires command" do
|
30
30
|
invalid = @valid.reject{|k,v| k == :command }
|
31
31
|
requires_attr(:command) { @firewall_rule.create(1, invalid) }
|
32
32
|
end
|
33
|
-
|
33
|
+
|
34
34
|
it "requires protocol" do
|
35
35
|
invalid = @valid.reject{|k,v| k == :protocol }
|
36
36
|
requires_attr(:protocol) { @firewall_rule.create(1, invalid) }
|
37
37
|
end
|
38
|
-
|
38
|
+
|
39
39
|
it "requires network_interface_id" do
|
40
40
|
invalid = @valid.reject{|k,v| k == :network_interface_id }
|
41
41
|
requires_attr(:network_interface_id) { @firewall_rule.create(1, invalid) }
|
42
42
|
end
|
43
|
-
|
43
|
+
|
44
44
|
it "allows all optional params" do
|
45
45
|
optional = [:network_interface_id, :address, :port]
|
46
46
|
@firewall_rule.should_receive(:request).exactly(optional.size).times.and_return Hash.new("firewall_rule" => {})
|
@@ -48,11 +48,11 @@ describe Squall::FirewallRule do
|
|
48
48
|
@firewall_rule.create(1, @valid.merge(param => "test"))
|
49
49
|
end
|
50
50
|
end
|
51
|
-
|
51
|
+
|
52
52
|
it "raises error on unknown params" do
|
53
53
|
expect { @firewall_rule.create(1, @valid.merge(:what => 'what')) }.to raise_error(ArgumentError, 'Unknown params: what')
|
54
54
|
end
|
55
|
-
|
55
|
+
|
56
56
|
it "raises an error for an invalid vm id" do
|
57
57
|
expect { @firewall_rule.create(404, @valid) }.to raise_error(Squall::NotFoundError)
|
58
58
|
end
|
@@ -62,10 +62,10 @@ describe Squall::FirewallRule do
|
|
62
62
|
@firewall_rule.success.should be_true
|
63
63
|
end
|
64
64
|
end
|
65
|
-
|
65
|
+
|
66
66
|
describe "#edit" do
|
67
67
|
use_vcr_cassette "firewall_rule/edit"
|
68
|
-
|
68
|
+
|
69
69
|
it "allows select params" do
|
70
70
|
optional = [:command, :protocol, :network_interface_id, :address, :port]
|
71
71
|
@firewall_rule.should_receive(:request).exactly(optional.size).times.and_return Hash.new()
|
@@ -73,35 +73,31 @@ describe Squall::FirewallRule do
|
|
73
73
|
@firewall_rule.edit(1, 1, param => "test")
|
74
74
|
end
|
75
75
|
end
|
76
|
-
|
76
|
+
|
77
77
|
it "raises error on unknown params" do
|
78
78
|
expect { @firewall_rule.edit(1, 1, :what => 'what') }.to raise_error(ArgumentError, 'Unknown params: what')
|
79
79
|
end
|
80
80
|
|
81
81
|
it "edits a firewall rule" do
|
82
|
-
|
83
|
-
|
84
|
-
@firewall_rule.success.should be_true
|
85
|
-
end
|
82
|
+
@firewall_rule.edit(1, 1, :port => 1000)
|
83
|
+
@firewall_rule.success.should be_true
|
86
84
|
end
|
87
|
-
|
85
|
+
|
88
86
|
it "raises an error for an invalid firewall rule id" do
|
89
87
|
expect { @firewall_rule.edit(1, 404, @valid) }.to raise_error(Squall::NotFoundError)
|
90
88
|
end
|
91
89
|
end
|
92
|
-
|
90
|
+
|
93
91
|
describe "#delete" do
|
94
92
|
use_vcr_cassette "firewall_rule/delete"
|
95
|
-
|
93
|
+
|
96
94
|
it "requires an id" do
|
97
95
|
expect { @firewall_rule.delete }.to raise_error(ArgumentError)
|
98
96
|
end
|
99
97
|
|
100
98
|
it "deletes a firewall rule" do
|
101
|
-
|
102
|
-
|
103
|
-
@firewall_rule.success.should be_true
|
104
|
-
end
|
99
|
+
@firewall_rule.delete(1, 1)
|
100
|
+
@firewall_rule.success.should be_true
|
105
101
|
end
|
106
102
|
|
107
103
|
it "returns NotFound for missing virtual machine" do
|
@@ -109,4 +105,4 @@ describe Squall::FirewallRule do
|
|
109
105
|
end
|
110
106
|
end
|
111
107
|
|
112
|
-
end
|
108
|
+
end
|
@@ -79,7 +79,7 @@ describe Squall::VirtualMachine do
|
|
79
79
|
|
80
80
|
it "requires primary_disk_size" do
|
81
81
|
requires_attr(:primary_disk_size) {
|
82
|
-
@virtual_machine.create(:label => @valid[:label], :hostname => @valid[:hostname],
|
82
|
+
@virtual_machine.create(:label => @valid[:label], :hostname => @valid[:hostname],
|
83
83
|
:memory => @valid[:memory], :cpus => @valid[:cpu_shares],
|
84
84
|
:cpu_shares => @valid[:cpu_shares])
|
85
85
|
}
|
@@ -102,7 +102,8 @@ describe Squall::VirtualMachine do
|
|
102
102
|
:note,
|
103
103
|
:allowed_hot_migrate,
|
104
104
|
:hypervisor_id,
|
105
|
-
:initial_root_password
|
105
|
+
:initial_root_password,
|
106
|
+
:hypervisor_group_id
|
106
107
|
]
|
107
108
|
|
108
109
|
@virtual_machine.should_receive(:request).exactly(optional.size).times.and_return Hash.new('virtual_machine' => [])
|
@@ -112,7 +113,7 @@ describe Squall::VirtualMachine do
|
|
112
113
|
end
|
113
114
|
|
114
115
|
it "creates a virtual_machine" do
|
115
|
-
pending "broken in OnApp (triggering the Network Interfaces error): see README (and update when fixed)" do
|
116
|
+
pending "broken in OnApp (triggering the Network Interfaces error): see README (and update when fixed)" do
|
116
117
|
virtual_machine = @virtual_machine.create(@valid)
|
117
118
|
@valid.each do |k,v|
|
118
119
|
virtual_machine[k].should == @valid[k.to_s]
|
@@ -257,19 +258,19 @@ describe Squall::VirtualMachine do
|
|
257
258
|
@virtual_machine.success.should be_true
|
258
259
|
end
|
259
260
|
end
|
260
|
-
|
261
|
+
|
261
262
|
describe "#set_ssh_keys" do
|
262
263
|
use_vcr_cassette "virtual_machine/set_ssh_keys"
|
263
264
|
it "requires an id" do
|
264
265
|
expect { @virtual_machine.set_ssh_keys }.to raise_error(ArgumentError)
|
265
266
|
@virtual_machine.success.should be_false
|
266
267
|
end
|
267
|
-
|
268
|
+
|
268
269
|
it "404s on not found" do
|
269
270
|
expect { @virtual_machine.set_ssh_keys(404) }.to raise_error(Squall::NotFoundError)
|
270
271
|
@virtual_machine.success.should be_false
|
271
272
|
end
|
272
|
-
|
273
|
+
|
273
274
|
it "sets the SSH keys" do
|
274
275
|
result = @virtual_machine.set_ssh_keys(1)
|
275
276
|
@virtual_machine.success.should be_true
|
@@ -312,7 +313,7 @@ describe Squall::VirtualMachine do
|
|
312
313
|
end
|
313
314
|
end
|
314
315
|
end
|
315
|
-
|
316
|
+
|
316
317
|
describe "#set_vip" do
|
317
318
|
use_vcr_cassette "virtual_machine/set_vip"
|
318
319
|
it "requires an id" do
|
@@ -327,7 +328,7 @@ describe Squall::VirtualMachine do
|
|
327
328
|
@virtual_machine.set_vip(1)
|
328
329
|
@virtual_machine.success.should be_true
|
329
330
|
end
|
330
|
-
|
331
|
+
|
331
332
|
it "sets the vip status to false if currently true" do
|
332
333
|
pending "No way to actually test this without being able to interact with server state" do
|
333
334
|
result = @virtual_machine.set_vip(1)
|
@@ -362,25 +363,25 @@ describe Squall::VirtualMachine do
|
|
362
363
|
it "returns not found for invalid virtual_machines" do
|
363
364
|
expect { @virtual_machine.resize(404, :memory => 1) }.to raise_error(Squall::NotFoundError)
|
364
365
|
end
|
365
|
-
|
366
|
+
|
366
367
|
it "accepts memory" do
|
367
368
|
hash = [:post, "/virtual_machines/1/resize.json", @virtual_machine.default_params(:memory => 1)]
|
368
369
|
@virtual_machine.should_receive(:request).with(*hash).once.and_return({'virtual_machine'=>{}})
|
369
370
|
@virtual_machine.resize 1, :memory => 1
|
370
371
|
end
|
371
|
-
|
372
|
+
|
372
373
|
it "accepts cpus" do
|
373
374
|
hash = [:post, "/virtual_machines/1/resize.json", @virtual_machine.default_params(:cpus => 1)]
|
374
375
|
@virtual_machine.should_receive(:request).with(*hash).once.and_return({'virtual_machine'=>{}})
|
375
376
|
@virtual_machine.resize 1, :cpus => 1
|
376
377
|
end
|
377
|
-
|
378
|
+
|
378
379
|
it "accepts cpu_shares" do
|
379
380
|
hash = [:post, "/virtual_machines/1/resize.json", @virtual_machine.default_params(:cpu_shares => 1)]
|
380
381
|
@virtual_machine.should_receive(:request).with(*hash).once.and_return({'virtual_machine'=>{}})
|
381
382
|
@virtual_machine.resize 1, :cpu_shares => 1
|
382
383
|
end
|
383
|
-
|
384
|
+
|
384
385
|
it "accepts allow_cold_resize" do
|
385
386
|
hash = [:post, "/virtual_machines/1/resize.json", @virtual_machine.default_params(:allow_cold_resize => 1)]
|
386
387
|
@virtual_machine.should_receive(:request).with(*hash).once.and_return({'virtual_machine'=>{}})
|
@@ -393,7 +394,7 @@ describe Squall::VirtualMachine do
|
|
393
394
|
|
394
395
|
virtual_machine['memory'].should == 1000
|
395
396
|
end
|
396
|
-
|
397
|
+
|
397
398
|
it "requires at least one option" do
|
398
399
|
expect { @virtual_machine.resize(1) }.to raise_error(ArgumentError)
|
399
400
|
end
|
@@ -501,14 +502,14 @@ describe Squall::VirtualMachine do
|
|
501
502
|
virtual_machine = @virtual_machine.reboot(1)
|
502
503
|
@virtual_machine.success.should be_true
|
503
504
|
end
|
504
|
-
|
505
|
+
|
505
506
|
it "reboots in recovery" do
|
506
507
|
hash = [:post, "/virtual_machines/1/reboot.json", {:query => {:mode => :recovery}}]
|
507
508
|
@virtual_machine.should_receive(:request).with(*hash).once.and_return({'virtual_machine'=>{}})
|
508
509
|
@virtual_machine.reboot 1, true
|
509
510
|
end
|
510
511
|
end
|
511
|
-
|
512
|
+
|
512
513
|
describe "#segregate" do
|
513
514
|
use_vcr_cassette "virtual_machine/segregate"
|
514
515
|
it "requires an id" do
|
@@ -536,7 +537,7 @@ describe Squall::VirtualMachine do
|
|
536
537
|
@virtual_machine.success.should be_true
|
537
538
|
end
|
538
539
|
end
|
539
|
-
|
540
|
+
|
540
541
|
describe "#console" do
|
541
542
|
use_vcr_cassette "virtual_machine/console"
|
542
543
|
it "requires an id" do
|
@@ -550,7 +551,7 @@ describe Squall::VirtualMachine do
|
|
550
551
|
@virtual_machine.success.should be_false
|
551
552
|
end
|
552
553
|
end
|
553
|
-
|
554
|
+
|
554
555
|
it "will reboot a virtual_machine" do
|
555
556
|
pending "broken on OnApp (returning 500)" do
|
556
557
|
virtual_machine = @virtual_machine.console(1)
|
@@ -558,7 +559,7 @@ describe Squall::VirtualMachine do
|
|
558
559
|
end
|
559
560
|
end
|
560
561
|
end
|
561
|
-
|
562
|
+
|
562
563
|
describe "#stats" do
|
563
564
|
use_vcr_cassette "virtual_machine/stats"
|
564
565
|
it "requires an id" do
|
data/squall.gemspec
CHANGED
@@ -14,20 +14,16 @@ Gem::Specification.new do |s|
|
|
14
14
|
|
15
15
|
s.rubyforge_project = "squall"
|
16
16
|
|
17
|
-
s.add_runtime_dependency 'faraday', '~> 0.8.
|
18
|
-
s.add_runtime_dependency 'faraday_middleware', '~> 0.8.
|
19
|
-
s.add_runtime_dependency 'json', '~> 1.
|
17
|
+
s.add_runtime_dependency 'faraday', '~> 0.8.1'
|
18
|
+
s.add_runtime_dependency 'faraday_middleware', '~> 0.8.7'
|
19
|
+
s.add_runtime_dependency 'json', '~> 1.7.3' if defined?(RUBY_ENGINE) && RUBY_ENGINE == 'rbx'
|
20
20
|
s.add_runtime_dependency('jruby-openssl', '~> 0.7.3') if RUBY_PLATFORM == 'java'
|
21
21
|
|
22
|
-
s.add_development_dependency 'rspec', '~> 2.
|
22
|
+
s.add_development_dependency 'rspec', '~> 2.10.0'
|
23
23
|
s.add_development_dependency 'fakeweb', '~> 1.3'
|
24
24
|
s.add_development_dependency 'vcr', '~> 1.8'
|
25
25
|
s.add_development_dependency 'awesome_print', '~> 1.0.2'
|
26
|
-
s.add_development_dependency 'rake', '~> 0.
|
27
|
-
if !defined?(RUBY_ENGINE) || RUBY_ENGINE != 'rbx'
|
28
|
-
s.add_development_dependency 'rcov', '~> 0.9'
|
29
|
-
s.add_development_dependency 'metric_fu', '~> 2.1'
|
30
|
-
end
|
26
|
+
s.add_development_dependency 'rake', '~> 0.9.2.2'
|
31
27
|
|
32
28
|
s.files = `git ls-files`.split("\n")
|
33
29
|
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: squall
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.1beta1
|
5
5
|
prerelease: 5
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,44 +9,45 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-06-08 00:00:00.000000000 -04:00
|
13
|
+
default_executable:
|
13
14
|
dependencies:
|
14
15
|
- !ruby/object:Gem::Dependency
|
15
16
|
name: faraday
|
16
|
-
requirement: &
|
17
|
+
requirement: &12810220 !ruby/object:Gem::Requirement
|
17
18
|
none: false
|
18
19
|
requirements:
|
19
20
|
- - ~>
|
20
21
|
- !ruby/object:Gem::Version
|
21
|
-
version: 0.8.
|
22
|
+
version: 0.8.1
|
22
23
|
type: :runtime
|
23
24
|
prerelease: false
|
24
|
-
version_requirements: *
|
25
|
+
version_requirements: *12810220
|
25
26
|
- !ruby/object:Gem::Dependency
|
26
27
|
name: faraday_middleware
|
27
|
-
requirement: &
|
28
|
+
requirement: &12809260 !ruby/object:Gem::Requirement
|
28
29
|
none: false
|
29
30
|
requirements:
|
30
31
|
- - ~>
|
31
32
|
- !ruby/object:Gem::Version
|
32
|
-
version: 0.8.
|
33
|
+
version: 0.8.7
|
33
34
|
type: :runtime
|
34
35
|
prerelease: false
|
35
|
-
version_requirements: *
|
36
|
+
version_requirements: *12809260
|
36
37
|
- !ruby/object:Gem::Dependency
|
37
38
|
name: rspec
|
38
|
-
requirement: &
|
39
|
+
requirement: &12781480 !ruby/object:Gem::Requirement
|
39
40
|
none: false
|
40
41
|
requirements:
|
41
42
|
- - ~>
|
42
43
|
- !ruby/object:Gem::Version
|
43
|
-
version:
|
44
|
+
version: 2.10.0
|
44
45
|
type: :development
|
45
46
|
prerelease: false
|
46
|
-
version_requirements: *
|
47
|
+
version_requirements: *12781480
|
47
48
|
- !ruby/object:Gem::Dependency
|
48
49
|
name: fakeweb
|
49
|
-
requirement: &
|
50
|
+
requirement: &12780680 !ruby/object:Gem::Requirement
|
50
51
|
none: false
|
51
52
|
requirements:
|
52
53
|
- - ~>
|
@@ -54,10 +55,10 @@ dependencies:
|
|
54
55
|
version: '1.3'
|
55
56
|
type: :development
|
56
57
|
prerelease: false
|
57
|
-
version_requirements: *
|
58
|
+
version_requirements: *12780680
|
58
59
|
- !ruby/object:Gem::Dependency
|
59
60
|
name: vcr
|
60
|
-
requirement: &
|
61
|
+
requirement: &12780040 !ruby/object:Gem::Requirement
|
61
62
|
none: false
|
62
63
|
requirements:
|
63
64
|
- - ~>
|
@@ -65,10 +66,10 @@ dependencies:
|
|
65
66
|
version: '1.8'
|
66
67
|
type: :development
|
67
68
|
prerelease: false
|
68
|
-
version_requirements: *
|
69
|
+
version_requirements: *12780040
|
69
70
|
- !ruby/object:Gem::Dependency
|
70
71
|
name: awesome_print
|
71
|
-
requirement: &
|
72
|
+
requirement: &12778900 !ruby/object:Gem::Requirement
|
72
73
|
none: false
|
73
74
|
requirements:
|
74
75
|
- - ~>
|
@@ -76,40 +77,18 @@ dependencies:
|
|
76
77
|
version: 1.0.2
|
77
78
|
type: :development
|
78
79
|
prerelease: false
|
79
|
-
version_requirements: *
|
80
|
+
version_requirements: *12778900
|
80
81
|
- !ruby/object:Gem::Dependency
|
81
82
|
name: rake
|
82
|
-
requirement: &
|
83
|
-
none: false
|
84
|
-
requirements:
|
85
|
-
- - ~>
|
86
|
-
- !ruby/object:Gem::Version
|
87
|
-
version: 0.8.7
|
88
|
-
type: :development
|
89
|
-
prerelease: false
|
90
|
-
version_requirements: *13805240
|
91
|
-
- !ruby/object:Gem::Dependency
|
92
|
-
name: rcov
|
93
|
-
requirement: &13804740 !ruby/object:Gem::Requirement
|
94
|
-
none: false
|
95
|
-
requirements:
|
96
|
-
- - ~>
|
97
|
-
- !ruby/object:Gem::Version
|
98
|
-
version: '0.9'
|
99
|
-
type: :development
|
100
|
-
prerelease: false
|
101
|
-
version_requirements: *13804740
|
102
|
-
- !ruby/object:Gem::Dependency
|
103
|
-
name: metric_fu
|
104
|
-
requirement: &13804280 !ruby/object:Gem::Requirement
|
83
|
+
requirement: &12778120 !ruby/object:Gem::Requirement
|
105
84
|
none: false
|
106
85
|
requirements:
|
107
86
|
- - ~>
|
108
87
|
- !ruby/object:Gem::Version
|
109
|
-
version:
|
88
|
+
version: 0.9.2.2
|
110
89
|
type: :development
|
111
90
|
prerelease: false
|
112
|
-
version_requirements: *
|
91
|
+
version_requirements: *12778120
|
113
92
|
description: A Ruby library for working with the OnApp REST API
|
114
93
|
email:
|
115
94
|
- jmazzi@site5.com
|
@@ -287,6 +266,7 @@ files:
|
|
287
266
|
- spec/vcr_cassettes/whitelist/list.yml
|
288
267
|
- spec/vcr_cassettes/whitelist/show.yml
|
289
268
|
- squall.gemspec
|
269
|
+
has_rdoc: true
|
290
270
|
homepage: ''
|
291
271
|
licenses: []
|
292
272
|
post_install_message:
|
@@ -301,7 +281,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
301
281
|
version: '0'
|
302
282
|
segments:
|
303
283
|
- 0
|
304
|
-
hash:
|
284
|
+
hash: -2705965580518717746
|
305
285
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
306
286
|
none: false
|
307
287
|
requirements:
|
@@ -310,7 +290,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
310
290
|
version: 1.3.1
|
311
291
|
requirements: []
|
312
292
|
rubyforge_project: squall
|
313
|
-
rubygems_version: 1.
|
293
|
+
rubygems_version: 1.6.2
|
314
294
|
signing_key:
|
315
295
|
specification_version: 3
|
316
296
|
summary: A Ruby library for working with the OnApp REST API
|