solusvm 1.0.0.beta2 → 1.0.0.beta3
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/lib/solusvm/base.rb +24 -12
- data/lib/solusvm/cli/base_cli.rb +27 -21
- data/lib/solusvm/general.rb +3 -3
- data/lib/solusvm/node.rb +1 -1
- data/lib/solusvm/reseller.rb +1 -1
- data/lib/solusvm/version.rb +1 -1
- data/test/fixtures/{general_node_list_all_ips_available.txt → node_list_all_ips_available.txt} +0 -0
- data/test/fixtures/{general_node_list_all_ips_not_available.txt → node_list_all_ips_not_available.txt} +0 -0
- data/test/fixtures/{general_node_statistics_success.txt → node_statistics_success.txt} +0 -0
- data/test/fixtures/{general_node_virtualservers_success.txt → node_virtualservers_success.txt} +0 -0
- data/test/fixtures/{general_node_virtualservers_success_empty.txt → node_virtualservers_success_empty.txt} +0 -0
- data/test/fixtures/{general_node_xenresources_success.txt → node_xenresources_success.txt} +0 -0
- data/test/fixtures/{general_nodes_ids_success.txt → nodes_ids_success.txt} +0 -0
- data/test/fixtures/{general_nodes_success.txt → nodes_list_success.txt} +0 -0
- data/test/test_base.rb +14 -3
- data/test/test_general.rb +18 -3
- data/test/test_node.rb +14 -9
- data/test/test_reseller.rb +5 -0
- metadata +32 -32
data/lib/solusvm/base.rb
CHANGED
@@ -28,7 +28,7 @@ module Solusvm
|
|
28
28
|
request = Net::HTTP::Get.new("#{api_endpoint.path}?#{options.to_query}")
|
29
29
|
response = http.request(request)
|
30
30
|
|
31
|
-
handle_errors(response
|
31
|
+
handle_errors(response)
|
32
32
|
@returned_parameters = parse_response(response.body, force_array)
|
33
33
|
log_messages(options)
|
34
34
|
end
|
@@ -45,20 +45,32 @@ module Solusvm
|
|
45
45
|
XmlSimple.xml_in(body, 'ForceArray' => force_array)
|
46
46
|
end
|
47
47
|
|
48
|
+
# Parses a returned_parameters value as a list, if present.
|
49
|
+
def parse_returned_params_as_list(attribute)
|
50
|
+
if returned_parameters[attribute] && !returned_parameters[attribute].empty?
|
51
|
+
returned_parameters[attribute].to_s.split(',')
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
48
55
|
# Look for known error messages
|
49
|
-
def handle_errors(
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
56
|
+
def handle_errors(response)
|
57
|
+
if (200..299).include? response.code.to_i
|
58
|
+
# Checks for application errors
|
59
|
+
case response.body.downcase
|
60
|
+
when /invalid ipaddress/i
|
61
|
+
raise "This IP is not authorized to use the API"
|
62
|
+
when /Invalid id or key/i
|
63
|
+
raise "Invalid ID or key"
|
64
|
+
when /Node not found/i
|
65
|
+
raise "Node does not exist"
|
66
|
+
end
|
67
|
+
else
|
68
|
+
raise SolusvmError, "Bad HTTP Status: #{response.code}"
|
57
69
|
end
|
58
70
|
end
|
59
71
|
|
60
72
|
# Returns true when a request has been successful
|
61
|
-
#
|
73
|
+
#
|
62
74
|
# my_class = MyClass.new
|
63
75
|
# my_class.create_server('example.com')
|
64
76
|
# my_class.successful? # => true
|
@@ -77,7 +89,7 @@ module Solusvm
|
|
77
89
|
|
78
90
|
def log_messages(options)
|
79
91
|
logger, logger_method = Solusvm.api_options[:logger], Solusvm.api_options[:logger_method]
|
80
|
-
|
92
|
+
|
81
93
|
if logger && logger.respond_to?(logger_method)
|
82
94
|
logger.send(logger_method, "[Start] => #{options[:action]}")
|
83
95
|
returned_parameters.each do |k,v|
|
@@ -94,7 +106,7 @@ module Solusvm
|
|
94
106
|
|
95
107
|
# Raises an exception unless a valid type is specified
|
96
108
|
def validate_server_type!(type)
|
97
|
-
type.strip
|
109
|
+
type = type.strip
|
98
110
|
unless VALID_SERVER_TYPES.include?(type)
|
99
111
|
raise SolusvmError, "Invalid Virtual Server type: #{type}"
|
100
112
|
end
|
data/lib/solusvm/cli/base_cli.rb
CHANGED
@@ -6,38 +6,44 @@ require 'solusvm/version'
|
|
6
6
|
module Solusvm
|
7
7
|
class BaseCli < Thor
|
8
8
|
include Thor::Actions
|
9
|
+
|
10
|
+
class << self
|
11
|
+
# Overrides the default banner implementation to output the whole command
|
12
|
+
def banner(task, namespace = true, subcommand = false)
|
13
|
+
"#{self.namespace.split(":").join(" ")} #{task.formatted_usage(self, false, false)}"
|
14
|
+
end
|
9
15
|
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
if
|
15
|
-
|
16
|
+
# Convenience method to get the namespace from the class name. It's the
|
17
|
+
# same as Thor default except that the "_cli" at the end of the class
|
18
|
+
# is removed.
|
19
|
+
def namespace(name=nil)
|
20
|
+
if name
|
21
|
+
super
|
16
22
|
else
|
17
|
-
|
23
|
+
@namespace ||= super.sub(/_cli$/, '')
|
18
24
|
end
|
19
25
|
end
|
20
26
|
|
21
|
-
|
22
|
-
|
27
|
+
# Retrieves default options coming from a configuration file, if any.
|
28
|
+
def default_option(key)
|
29
|
+
@@yaml ||= begin
|
30
|
+
file = File.join(File.expand_path(ENV['HOME']), '.solusvm.yml')
|
31
|
+
if File.exists?(file)
|
32
|
+
YAML::load(File.open(file))
|
33
|
+
else
|
34
|
+
{}
|
35
|
+
end
|
36
|
+
end
|
23
37
|
|
24
|
-
|
25
|
-
|
26
|
-
# is removed.
|
27
|
-
def self.namespace(name=nil)
|
28
|
-
return super if name
|
29
|
-
@namespace ||= super.sub(/_cli$/, '')
|
38
|
+
@@yaml[key.to_s]
|
39
|
+
end
|
30
40
|
end
|
31
|
-
|
41
|
+
|
42
|
+
# Default required options
|
32
43
|
class_option :api_login, :type => :string, :desc => "API ID; Required.", :aliases => ["-I", "--api-login"], :default => default_option(:id)
|
33
44
|
class_option :api_key, :type => :string, :desc => "API KEY; Required.", :aliases => ["-K", "--api-key"], :default => default_option(:key)
|
34
45
|
class_option :api_url, :type => :string, :desc => "API URL; Required.", :aliases => ["-U", "--api-url"], :default => default_option(:url)
|
35
46
|
|
36
|
-
# Overrides the default banner implementation to output the whole command
|
37
|
-
def self.banner(task, namespace = true, subcommand = false)
|
38
|
-
"#{self.namespace.split(":").join(" ")} #{task.formatted_usage(self, false, false)}"
|
39
|
-
end
|
40
|
-
|
41
47
|
protected
|
42
48
|
|
43
49
|
def configure
|
data/lib/solusvm/general.rb
CHANGED
@@ -10,7 +10,7 @@ module Solusvm
|
|
10
10
|
def templates(type)
|
11
11
|
validate_server_type!(type)
|
12
12
|
perform_request(:action => 'listtemplates', :type => type)
|
13
|
-
|
13
|
+
parse_returned_params_as_list('templates')
|
14
14
|
end
|
15
15
|
|
16
16
|
# Lists available plans.
|
@@ -21,7 +21,7 @@ module Solusvm
|
|
21
21
|
def plans(type)
|
22
22
|
validate_server_type!(type)
|
23
23
|
perform_request(:action => 'listplans', :type => type)
|
24
|
-
|
24
|
+
parse_returned_params_as_list('plans')
|
25
25
|
end
|
26
26
|
|
27
27
|
# Lists available isos.
|
@@ -32,7 +32,7 @@ module Solusvm
|
|
32
32
|
def isos(type)
|
33
33
|
validate_server_type!(type)
|
34
34
|
perform_request(:action => 'listiso', :type => type)
|
35
|
-
|
35
|
+
parse_returned_params_as_list('iso')
|
36
36
|
end
|
37
37
|
end
|
38
38
|
end
|
data/lib/solusvm/node.rb
CHANGED
@@ -10,7 +10,7 @@ module Solusvm
|
|
10
10
|
def list(type)
|
11
11
|
validate_server_type!(type)
|
12
12
|
perform_request(:action => 'listnodes', :type => type)
|
13
|
-
|
13
|
+
parse_returned_params_as_list('nodes')
|
14
14
|
end
|
15
15
|
|
16
16
|
# Lists existing nodes ids of a given type.
|
data/lib/solusvm/reseller.rb
CHANGED
data/lib/solusvm/version.rb
CHANGED
data/test/fixtures/{general_node_list_all_ips_available.txt → node_list_all_ips_available.txt}
RENAMED
File without changes
|
File without changes
|
File without changes
|
data/test/fixtures/{general_node_virtualservers_success.txt → node_virtualservers_success.txt}
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/test/test_base.rb
CHANGED
@@ -75,7 +75,7 @@ class TestBase < Test::Unit::TestCase
|
|
75
75
|
begin
|
76
76
|
@base.perform_request(:action => 'unauthorized')
|
77
77
|
rescue Exception => e
|
78
|
-
message = e
|
78
|
+
message = e
|
79
79
|
end
|
80
80
|
assert_equal "This IP is not authorized to use the API", message.to_s
|
81
81
|
end
|
@@ -86,7 +86,7 @@ class TestBase < Test::Unit::TestCase
|
|
86
86
|
begin
|
87
87
|
@base.perform_request(:action => 'badkey')
|
88
88
|
rescue Exception => e
|
89
|
-
message = e
|
89
|
+
message = e
|
90
90
|
end
|
91
91
|
assert_equal "Invalid ID or key", message.to_s
|
92
92
|
end
|
@@ -97,8 +97,19 @@ class TestBase < Test::Unit::TestCase
|
|
97
97
|
begin
|
98
98
|
@base.perform_request(:action => 'nodeexist')
|
99
99
|
rescue Exception => e
|
100
|
-
message = e
|
100
|
+
message = e
|
101
101
|
end
|
102
102
|
assert_equal "Node does not exist", message.to_s
|
103
103
|
end
|
104
|
+
|
105
|
+
def test_invalid_http_status
|
106
|
+
FakeWeb.register_uri(:get, "#{base_uri}&action=httperror", :body => "", :status => ["404", "Not Found"])
|
107
|
+
message = ""
|
108
|
+
begin
|
109
|
+
@base.perform_request(:action => 'httperror')
|
110
|
+
rescue Solusvm::SolusvmError => e
|
111
|
+
message = e
|
112
|
+
end
|
113
|
+
assert_equal "Bad HTTP Status: 404", message.to_s
|
114
|
+
end
|
104
115
|
end
|
data/test/test_general.rb
CHANGED
@@ -13,7 +13,12 @@ class TestGeneral < Test::Unit::TestCase
|
|
13
13
|
assert_equal %w(template1 template2 template3), @general.templates('xen')
|
14
14
|
end
|
15
15
|
|
16
|
-
def
|
16
|
+
def test_templates_empty
|
17
|
+
FakeWeb.register_uri(:get, "#{base_uri}&action=listtemplates&type=xen", :body => load_response('error'))
|
18
|
+
assert !@general.templates('xen')
|
19
|
+
end
|
20
|
+
|
21
|
+
def test_templates_with_invalid_type
|
17
22
|
FakeWeb.register_uri(:get, "#{base_uri}&action=listtemplates&type=whatever", :body => load_response('error'))
|
18
23
|
begin
|
19
24
|
@general.templates('whatever')
|
@@ -28,7 +33,12 @@ class TestGeneral < Test::Unit::TestCase
|
|
28
33
|
assert_equal %w(plan1 plan2 plan3 plan4), @general.plans('xen')
|
29
34
|
end
|
30
35
|
|
31
|
-
def
|
36
|
+
def test_plans_empty
|
37
|
+
FakeWeb.register_uri(:get, "#{base_uri}&action=listplans&type=xen", :body => load_response('error'))
|
38
|
+
assert !@general.plans('xen')
|
39
|
+
end
|
40
|
+
|
41
|
+
def test_plans_with_invalid_type
|
32
42
|
FakeWeb.register_uri(:get, "#{base_uri}&action=listplans&type=whatever", :body => load_response('error'))
|
33
43
|
begin
|
34
44
|
@general.plans('whatever')
|
@@ -43,7 +53,12 @@ class TestGeneral < Test::Unit::TestCase
|
|
43
53
|
assert_equal %w(iso1 iso2 iso3), @general.isos('xen')
|
44
54
|
end
|
45
55
|
|
46
|
-
def
|
56
|
+
def test_isos_empty
|
57
|
+
FakeWeb.register_uri(:get, "#{base_uri}&action=listiso&type=xen", :body => load_response('error'))
|
58
|
+
assert !@general.isos('xen')
|
59
|
+
end
|
60
|
+
|
61
|
+
def test_isos_with_invalid_type
|
47
62
|
FakeWeb.register_uri(:get, "#{base_uri}&action=listiso&type=whatever", :body => load_response('error'))
|
48
63
|
begin
|
49
64
|
@general.isos('whatever')
|
data/test/test_node.rb
CHANGED
@@ -9,11 +9,16 @@ class TestNode < Test::Unit::TestCase
|
|
9
9
|
end
|
10
10
|
|
11
11
|
def test_list
|
12
|
-
FakeWeb.register_uri(:get, "#{base_uri}&action=listnodes&type=xen", :body => load_response('
|
12
|
+
FakeWeb.register_uri(:get, "#{base_uri}&action=listnodes&type=xen", :body => load_response('nodes_list_success'))
|
13
13
|
assert_equal %w(node1 node2 node3 node4), @nodes.list('xen')
|
14
14
|
end
|
15
15
|
|
16
|
-
def
|
16
|
+
def test_list_empty
|
17
|
+
FakeWeb.register_uri(:get, "#{base_uri}&action=listnodes&type=xen", :body => load_response('error'))
|
18
|
+
assert !@nodes.list('xen')
|
19
|
+
end
|
20
|
+
|
21
|
+
def test_nodes_with_invalid_type
|
17
22
|
FakeWeb.register_uri(:get, "#{base_uri}&action=listnodes&type=whatever", :body => load_response('error'))
|
18
23
|
begin
|
19
24
|
@nodes.list('whatever')
|
@@ -24,7 +29,7 @@ class TestNode < Test::Unit::TestCase
|
|
24
29
|
end
|
25
30
|
|
26
31
|
def test_statistics
|
27
|
-
FakeWeb.register_uri(:get, "#{base_uri}&action=node-statistics&nodeid=1", :body => load_response('
|
32
|
+
FakeWeb.register_uri(:get, "#{base_uri}&action=node-statistics&nodeid=1", :body => load_response('node_statistics_success'))
|
28
33
|
node_statistics = @nodes.statistics(1)
|
29
34
|
|
30
35
|
assert_equal '1000', node_statistics['freedisk']
|
@@ -43,17 +48,17 @@ class TestNode < Test::Unit::TestCase
|
|
43
48
|
end
|
44
49
|
|
45
50
|
def test_list_all_ips_available
|
46
|
-
FakeWeb.register_uri(:get, "#{base_uri}&action=node-iplist&nodeid=1", :body => load_response('
|
51
|
+
FakeWeb.register_uri(:get, "#{base_uri}&action=node-iplist&nodeid=1", :body => load_response('node_list_all_ips_available'))
|
47
52
|
assert_equal %w(123.123.123.123 124.124.124.124 125.125.125.125).sort, @nodes.available_ips(1).sort
|
48
53
|
end
|
49
54
|
|
50
55
|
def test_list_all_ips_not_available
|
51
|
-
FakeWeb.register_uri(:get, "#{base_uri}&action=node-iplist&nodeid=1", :body => load_response('
|
56
|
+
FakeWeb.register_uri(:get, "#{base_uri}&action=node-iplist&nodeid=1", :body => load_response('node_list_all_ips_not_available'))
|
52
57
|
assert @nodes.available_ips(1).empty?
|
53
58
|
end
|
54
59
|
|
55
60
|
def test_ids
|
56
|
-
FakeWeb.register_uri(:get, "#{base_uri}&action=node-idlist&type=xen", :body => load_response('
|
61
|
+
FakeWeb.register_uri(:get, "#{base_uri}&action=node-idlist&type=xen", :body => load_response('nodes_ids_success'))
|
57
62
|
assert_equal %w(nodeid1 nodeid2 nodeid3 nodeid4), @nodes.ids('xen')
|
58
63
|
end
|
59
64
|
|
@@ -68,7 +73,7 @@ class TestNode < Test::Unit::TestCase
|
|
68
73
|
end
|
69
74
|
|
70
75
|
def test_virtualservers
|
71
|
-
FakeWeb.register_uri(:get, "#{base_uri}&action=node-virtualservers&nodeid=1", :body => load_response('
|
76
|
+
FakeWeb.register_uri(:get, "#{base_uri}&action=node-virtualservers&nodeid=1", :body => load_response('node_virtualservers_success'))
|
72
77
|
|
73
78
|
servers = @nodes.virtualservers(1)
|
74
79
|
assert_equal 1, servers.size
|
@@ -88,7 +93,7 @@ class TestNode < Test::Unit::TestCase
|
|
88
93
|
end
|
89
94
|
|
90
95
|
def test_virtualservers_empty
|
91
|
-
FakeWeb.register_uri(:get, "#{base_uri}&action=node-virtualservers&nodeid=1", :body => load_response('
|
96
|
+
FakeWeb.register_uri(:get, "#{base_uri}&action=node-virtualservers&nodeid=1", :body => load_response('node_virtualservers_success_empty'))
|
92
97
|
assert @nodes.virtualservers(1).empty?
|
93
98
|
end
|
94
99
|
|
@@ -98,7 +103,7 @@ class TestNode < Test::Unit::TestCase
|
|
98
103
|
end
|
99
104
|
|
100
105
|
def test_xenresources
|
101
|
-
FakeWeb.register_uri(:get, "#{base_uri}&action=node-xenresources&nodeid=1", :body => load_response('
|
106
|
+
FakeWeb.register_uri(:get, "#{base_uri}&action=node-xenresources&nodeid=1", :body => load_response('node_xenresources_success'))
|
102
107
|
node_resources = @nodes.xenresources(1)
|
103
108
|
|
104
109
|
assert_equal 'thefreememory', node_resources['freememory']
|
data/test/test_reseller.rb
CHANGED
@@ -67,6 +67,11 @@ class TestReseller < Test::Unit::TestCase
|
|
67
67
|
assert_equal %w(username1 username2 username3), @reseller.list
|
68
68
|
end
|
69
69
|
|
70
|
+
def test_list_empty
|
71
|
+
FakeWeb.register_uri(:get, "#{base_uri}&action=reseller-list", :body => load_response('error'))
|
72
|
+
assert !@reseller.list
|
73
|
+
end
|
74
|
+
|
70
75
|
def test_delete
|
71
76
|
FakeWeb.register_uri(:get, "#{base_uri}&action=reseller-delete&username=vps123", :body => load_response('reseller_delete_success'))
|
72
77
|
assert @reseller.delete("vps123")
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: solusvm
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.0.
|
4
|
+
version: 1.0.0.beta3
|
5
5
|
prerelease: 6
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -14,7 +14,7 @@ default_executable:
|
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: xml-simple
|
17
|
-
requirement: &
|
17
|
+
requirement: &10478600 !ruby/object:Gem::Requirement
|
18
18
|
none: false
|
19
19
|
requirements:
|
20
20
|
- - ~>
|
@@ -22,10 +22,10 @@ dependencies:
|
|
22
22
|
version: 1.1.1
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
|
-
version_requirements: *
|
25
|
+
version_requirements: *10478600
|
26
26
|
- !ruby/object:Gem::Dependency
|
27
27
|
name: thor
|
28
|
-
requirement: &
|
28
|
+
requirement: &10477860 !ruby/object:Gem::Requirement
|
29
29
|
none: false
|
30
30
|
requirements:
|
31
31
|
- - ~>
|
@@ -33,10 +33,10 @@ dependencies:
|
|
33
33
|
version: 0.14.6
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
|
-
version_requirements: *
|
36
|
+
version_requirements: *10477860
|
37
37
|
- !ruby/object:Gem::Dependency
|
38
38
|
name: redgreen
|
39
|
-
requirement: &
|
39
|
+
requirement: &10476700 !ruby/object:Gem::Requirement
|
40
40
|
none: false
|
41
41
|
requirements:
|
42
42
|
- - ~>
|
@@ -44,10 +44,10 @@ dependencies:
|
|
44
44
|
version: 1.2.2
|
45
45
|
type: :development
|
46
46
|
prerelease: false
|
47
|
-
version_requirements: *
|
47
|
+
version_requirements: *10476700
|
48
48
|
- !ruby/object:Gem::Dependency
|
49
49
|
name: fakeweb
|
50
|
-
requirement: &
|
50
|
+
requirement: &10474880 !ruby/object:Gem::Requirement
|
51
51
|
none: false
|
52
52
|
requirements:
|
53
53
|
- - ~>
|
@@ -55,10 +55,10 @@ dependencies:
|
|
55
55
|
version: 1.3.0
|
56
56
|
type: :development
|
57
57
|
prerelease: false
|
58
|
-
version_requirements: *
|
58
|
+
version_requirements: *10474880
|
59
59
|
- !ruby/object:Gem::Dependency
|
60
60
|
name: mocha
|
61
|
-
requirement: &
|
61
|
+
requirement: &10473260 !ruby/object:Gem::Requirement
|
62
62
|
none: false
|
63
63
|
requirements:
|
64
64
|
- - ~>
|
@@ -66,10 +66,10 @@ dependencies:
|
|
66
66
|
version: 0.10.3
|
67
67
|
type: :development
|
68
68
|
prerelease: false
|
69
|
-
version_requirements: *
|
69
|
+
version_requirements: *10473260
|
70
70
|
- !ruby/object:Gem::Dependency
|
71
71
|
name: rdoc
|
72
|
-
requirement: &
|
72
|
+
requirement: &10472140 !ruby/object:Gem::Requirement
|
73
73
|
none: false
|
74
74
|
requirements:
|
75
75
|
- - ~>
|
@@ -77,10 +77,10 @@ dependencies:
|
|
77
77
|
version: '3.12'
|
78
78
|
type: :development
|
79
79
|
prerelease: false
|
80
|
-
version_requirements: *
|
80
|
+
version_requirements: *10472140
|
81
81
|
- !ruby/object:Gem::Dependency
|
82
82
|
name: rake
|
83
|
-
requirement: &
|
83
|
+
requirement: &10471240 !ruby/object:Gem::Requirement
|
84
84
|
none: false
|
85
85
|
requirements:
|
86
86
|
- - ~>
|
@@ -88,7 +88,7 @@ dependencies:
|
|
88
88
|
version: 0.9.2.2
|
89
89
|
type: :development
|
90
90
|
prerelease: false
|
91
|
-
version_requirements: *
|
91
|
+
version_requirements: *10471240
|
92
92
|
description: Solusvm allows for easy interaction with the SolusVM Admin::API.
|
93
93
|
email:
|
94
94
|
- jmazzi@gmail.com
|
@@ -145,16 +145,16 @@ files:
|
|
145
145
|
- test/fixtures/client_list_success_empty.txt
|
146
146
|
- test/fixtures/error.txt
|
147
147
|
- test/fixtures/general_isos_success.txt
|
148
|
-
- test/fixtures/general_node_list_all_ips_available.txt
|
149
|
-
- test/fixtures/general_node_list_all_ips_not_available.txt
|
150
|
-
- test/fixtures/general_node_statistics_success.txt
|
151
|
-
- test/fixtures/general_node_virtualservers_success.txt
|
152
|
-
- test/fixtures/general_node_virtualservers_success_empty.txt
|
153
|
-
- test/fixtures/general_node_xenresources_success.txt
|
154
|
-
- test/fixtures/general_nodes_ids_success.txt
|
155
|
-
- test/fixtures/general_nodes_success.txt
|
156
148
|
- test/fixtures/general_plans_success.txt
|
157
149
|
- test/fixtures/general_templates_success.txt
|
150
|
+
- test/fixtures/node_list_all_ips_available.txt
|
151
|
+
- test/fixtures/node_list_all_ips_not_available.txt
|
152
|
+
- test/fixtures/node_statistics_success.txt
|
153
|
+
- test/fixtures/node_virtualservers_success.txt
|
154
|
+
- test/fixtures/node_virtualservers_success_empty.txt
|
155
|
+
- test/fixtures/node_xenresources_success.txt
|
156
|
+
- test/fixtures/nodes_ids_success.txt
|
157
|
+
- test/fixtures/nodes_list_success.txt
|
158
158
|
- test/fixtures/reseller_change_resources_success.txt
|
159
159
|
- test/fixtures/reseller_create_success.txt
|
160
160
|
- test/fixtures/reseller_delete_success.txt
|
@@ -213,7 +213,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
213
213
|
version: '0'
|
214
214
|
segments:
|
215
215
|
- 0
|
216
|
-
hash:
|
216
|
+
hash: 429201309612601316
|
217
217
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
218
218
|
none: false
|
219
219
|
requirements:
|
@@ -247,16 +247,16 @@ test_files:
|
|
247
247
|
- test/fixtures/client_list_success_empty.txt
|
248
248
|
- test/fixtures/error.txt
|
249
249
|
- test/fixtures/general_isos_success.txt
|
250
|
-
- test/fixtures/general_node_list_all_ips_available.txt
|
251
|
-
- test/fixtures/general_node_list_all_ips_not_available.txt
|
252
|
-
- test/fixtures/general_node_statistics_success.txt
|
253
|
-
- test/fixtures/general_node_virtualservers_success.txt
|
254
|
-
- test/fixtures/general_node_virtualservers_success_empty.txt
|
255
|
-
- test/fixtures/general_node_xenresources_success.txt
|
256
|
-
- test/fixtures/general_nodes_ids_success.txt
|
257
|
-
- test/fixtures/general_nodes_success.txt
|
258
250
|
- test/fixtures/general_plans_success.txt
|
259
251
|
- test/fixtures/general_templates_success.txt
|
252
|
+
- test/fixtures/node_list_all_ips_available.txt
|
253
|
+
- test/fixtures/node_list_all_ips_not_available.txt
|
254
|
+
- test/fixtures/node_statistics_success.txt
|
255
|
+
- test/fixtures/node_virtualservers_success.txt
|
256
|
+
- test/fixtures/node_virtualservers_success_empty.txt
|
257
|
+
- test/fixtures/node_xenresources_success.txt
|
258
|
+
- test/fixtures/nodes_ids_success.txt
|
259
|
+
- test/fixtures/nodes_list_success.txt
|
260
260
|
- test/fixtures/reseller_change_resources_success.txt
|
261
261
|
- test/fixtures/reseller_create_success.txt
|
262
262
|
- test/fixtures/reseller_delete_success.txt
|