oca 3.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,156 @@
1
+ $: << '../' \
2
+ << './'
3
+
4
+ require 'OpenNebula'
5
+ require 'helpers/MockClient'
6
+
7
+ module OpenNebula
8
+
9
+ describe "VirtualNetwork using NOKOGIRI" do
10
+ before(:all) do
11
+ NOKOGIRI=true
12
+
13
+ @xml = VirtualNetwork.build_xml(3)
14
+
15
+ client = MockClient.new()
16
+ @vnet = VirtualNetwork.new(@xml,client)
17
+ end
18
+
19
+ it "should create a Nokogiri Node" do
20
+ @xml.class.to_s.should eql('Nokogiri::XML::NodeSet')
21
+ end
22
+
23
+ it "should allocate the new VNET" do
24
+ @vnet.allocate(nil)
25
+
26
+ @vnet.id.should eql(3)
27
+ end
28
+
29
+ it "should update the VNET info" do
30
+ @vnet.info()
31
+
32
+ @vnet.id.should eql(3)
33
+ @vnet.name.should eql('Red LAN')
34
+ end
35
+
36
+ it "should delete the VNET" do
37
+ rc = @vnet.delete()
38
+
39
+ rc.should eql(nil)
40
+ end
41
+
42
+ it "should access an attribute using []" do
43
+ @vnet['ID'].should eql('3')
44
+ @vnet['NAME'].should eql('Red LAN')
45
+ @vnet['BRIDGE'].should eql('vbr0')
46
+ @vnet['TEMPLATE/NETWORK_ADDRESS'].should eql('192.168.0.0')
47
+ @vnet['TEMPLATE/TYPE'].should eql('RANGED')
48
+ @vnet['LEASES/LEASE/IP'].should eql('192.168.0.1')
49
+ @vnet['LEASES/LEASE/USED'].should eql('1')
50
+ end
51
+ end
52
+
53
+ describe "VirtualNetwork using REXML" do
54
+ before(:all) do
55
+ NOKOGIRI=false
56
+
57
+ @xml = VirtualNetwork.build_xml(3)
58
+
59
+ client = MockClient.new()
60
+ @vnet = VirtualNetwork.new(@xml,client)
61
+ end
62
+
63
+ it "should create a REXML Element" do
64
+ @xml.class.to_s.should eql('REXML::Element')
65
+ end
66
+
67
+ it "should allocate the new VNET" do
68
+ @vnet.allocate(nil)
69
+
70
+ @vnet.id.should eql(3)
71
+ end
72
+
73
+ it "should update the VNET info" do
74
+ @vnet.info()
75
+
76
+ @vnet.id.should eql(3)
77
+ @vnet.name.should eql('Red LAN')
78
+ end
79
+
80
+ it "should delete the VNET" do
81
+ rc = @vnet.delete()
82
+
83
+ rc.should eql(nil)
84
+ end
85
+
86
+ it "should access an attribute using []" do
87
+ @vnet['ID'].should eql('3')
88
+ @vnet['NAME'].should eql('Red LAN')
89
+ @vnet['BRIDGE'].should eql('vbr0')
90
+ @vnet['TEMPLATE/NETWORK_ADDRESS'].should eql('192.168.0.0')
91
+ @vnet['TEMPLATE/TYPE'].should eql('RANGED')
92
+ @vnet['LEASES/LEASE/IP'].should eql('192.168.0.1')
93
+ @vnet['LEASES/LEASE/USED'].should eql('1')
94
+ end
95
+ end
96
+
97
+
98
+ describe "VirtualNetwork using NOKOGIRI without id" do
99
+ before(:all) do
100
+ NOKOGIRI=true
101
+
102
+ @xml = VirtualNetwork.build_xml()
103
+
104
+ client = MockClient.new()
105
+ @vnet = VirtualNetwork.new(@xml,client)
106
+ end
107
+
108
+ it "should create a Nokogiri Node" do
109
+ @xml.class.to_s.should eql('Nokogiri::XML::NodeSet')
110
+ end
111
+
112
+ it "should get Error getting info" do
113
+ rc = @vnet.info()
114
+
115
+ OpenNebula.is_error?(rc).should eql(true)
116
+ @vnet.id.should eql(nil)
117
+ @vnet.name.should eql(nil)
118
+ end
119
+
120
+ it "should get Error deleting the VNET" do
121
+ rc = @vnet.delete()
122
+
123
+ OpenNebula.is_error?(rc).should eql(true)
124
+ end
125
+ end
126
+
127
+ describe "VirtualNetwork using REXML without id" do
128
+ before(:all) do
129
+ NOKOGIRI=false
130
+
131
+ @xml = VirtualNetwork.build_xml()
132
+
133
+ client = MockClient.new()
134
+ @vnet = VirtualNetwork.new(@xml,client)
135
+ end
136
+
137
+ it "should create a REXML Element" do
138
+ @xml.class.to_s.should eql('REXML::Element')
139
+ end
140
+
141
+ it "should get Error getting info" do
142
+ rc = @vnet.info()
143
+
144
+ OpenNebula.is_error?(rc).should eql(true)
145
+ @vnet.id.should eql(nil)
146
+ @vnet.name.should eql(nil)
147
+ end
148
+
149
+ it "should get Error deleting the VNET" do
150
+ rc = @vnet.delete()
151
+
152
+ OpenNebula.is_error?(rc).should eql(true)
153
+ end
154
+ end
155
+
156
+ end
@@ -0,0 +1,38 @@
1
+ <HOST>
2
+ <ID>7</ID>
3
+ <NAME>dummyhost</NAME>
4
+ <STATE>2</STATE>
5
+ <IM_MAD>im_dummy</IM_MAD>
6
+ <VM_MAD>vmm_dummy</VM_MAD>
7
+ <TM_MAD>tm_dummy</TM_MAD>
8
+ <LAST_MON_TIME>1277733596</LAST_MON_TIME>
9
+ <HOST_SHARE>
10
+ <HID>0</HID>
11
+ <DISK_USAGE>0</DISK_USAGE>
12
+ <MEM_USAGE>1572864</MEM_USAGE>
13
+ <CPU_USAGE>300</CPU_USAGE>
14
+ <MAX_DISK>0</MAX_DISK>
15
+ <MAX_MEM>16777216</MAX_MEM>
16
+ <MAX_CPU>800</MAX_CPU>
17
+ <FREE_DISK>0</FREE_DISK>
18
+ <FREE_MEM>16777216</FREE_MEM>
19
+ <FREE_CPU>800</FREE_CPU>
20
+ <USED_DISK>0</USED_DISK>
21
+ <USED_MEM>0</USED_MEM>
22
+ <USED_CPU>0</USED_CPU>
23
+ <RUNNING_VMS>3</RUNNING_VMS>
24
+ </HOST_SHARE>
25
+ <TEMPLATE>
26
+ <CPUSPEED>2.2GHz</CPUSPEED>
27
+ <FREECPU>800</FREECPU>
28
+ <FREEMEMORY>16777216</FREEMEMORY>
29
+ <HOSTNAME>dummyhost</HOSTNAME>
30
+ <HYPERVISOR>dummy</HYPERVISOR>
31
+ <MAC>50:20:20:20:20:21</MAC>
32
+ <NAME>dummyhost</NAME>
33
+ <TOTALCPU>800</TOTALCPU>
34
+ <TOTALMEMORY>16777216</TOTALMEMORY>
35
+ <USEDCPU>0</USEDCPU>
36
+ <USEDMEMORY>0</USEDMEMORY>
37
+ </TEMPLATE>
38
+ </HOST>
@@ -0,0 +1,52 @@
1
+ <HOST_POOL>
2
+ <HOST>
3
+ <ID>0</ID>
4
+ <NAME>dummyhost</NAME>
5
+ <STATE>2</STATE>
6
+ <IM_MAD>im_dummy</IM_MAD>
7
+ <VM_MAD>vmm_dummy</VM_MAD>
8
+ <TM_MAD>tm_dummy</TM_MAD>
9
+ <LAST_MON_TIME>1277912461</LAST_MON_TIME>
10
+ <HOST_SHARE>
11
+ <HID>0</HID>
12
+ <DISK_USAGE>0</DISK_USAGE>
13
+ <MEM_USAGE>1572864</MEM_USAGE>
14
+ <CPU_USAGE>300</CPU_USAGE>
15
+ <MAX_DISK>0</MAX_DISK>
16
+ <MAX_MEM>16777216</MAX_MEM>
17
+ <MAX_CPU>800</MAX_CPU>
18
+ <FREE_DISK>0</FREE_DISK>
19
+ <FREE_MEM>16777216</FREE_MEM>
20
+ <FREE_CPU>800</FREE_CPU>
21
+ <USED_DISK>0</USED_DISK>
22
+ <USED_MEM>0</USED_MEM>
23
+ <USED_CPU>0</USED_CPU>
24
+ <RUNNING_VMS>3</RUNNING_VMS>
25
+ </HOST_SHARE>
26
+ </HOST>
27
+ <HOST>
28
+ <ID>1</ID>
29
+ <NAME>thost</NAME>
30
+ <STATE>2</STATE>
31
+ <IM_MAD>im_dummy</IM_MAD>
32
+ <VM_MAD>vmm_dummy</VM_MAD>
33
+ <TM_MAD>tm_dummy</TM_MAD>
34
+ <LAST_MON_TIME>1277912461</LAST_MON_TIME>
35
+ <HOST_SHARE>
36
+ <HID>1</HID>
37
+ <DISK_USAGE>0</DISK_USAGE>
38
+ <MEM_USAGE>0</MEM_USAGE>
39
+ <CPU_USAGE>0</CPU_USAGE>
40
+ <MAX_DISK>0</MAX_DISK>
41
+ <MAX_MEM>16777216</MAX_MEM>
42
+ <MAX_CPU>800</MAX_CPU>
43
+ <FREE_DISK>0</FREE_DISK>
44
+ <FREE_MEM>16777216</FREE_MEM>
45
+ <FREE_CPU>800</FREE_CPU>
46
+ <USED_DISK>0</USED_DISK>
47
+ <USED_MEM>0</USED_MEM>
48
+ <USED_CPU>0</USED_CPU>
49
+ <RUNNING_VMS>0</RUNNING_VMS>
50
+ </HOST_SHARE>
51
+ </HOST>
52
+ </HOST_POOL>
@@ -0,0 +1,6 @@
1
+ <USER>
2
+ <ID>3</ID>
3
+ <NAME>dan</NAME>
4
+ <PASSWORD>d22a12348334v33f71ba846572d25250d40701e72</PASSWORD>
5
+ <ENABLED>0</ENABLED>
6
+ </USER>
@@ -0,0 +1,14 @@
1
+ <USER_POOL>
2
+ <USER>
3
+ <ID>0</ID>
4
+ <NAME>oneadmin</NAME>
5
+ <PASSWORD>f13a1234833436f71ab846572d251c0d40391e72</PASSWORD>
6
+ <ENABLED>1</ENABLED>
7
+ </USER>
8
+ <USER>
9
+ <ID>1</ID>
10
+ <NAME>dan</NAME>
11
+ <PASSWORD>d22a12348334v33f71ba846572d25250d40701e72</PASSWORD>
12
+ <ENABLED>0</ENABLED>
13
+ </USER>
14
+ </USER_POOL>
@@ -0,0 +1,59 @@
1
+ <VM>
2
+ <ID>6</ID>
3
+ <UID>0</UID>
4
+ <NAME>vm-example</NAME>
5
+ <LAST_POLL>1277729095</LAST_POLL>
6
+ <STATE>3</STATE>
7
+ <LCM_STATE>3</LCM_STATE>
8
+ <STIME>1277375180</STIME>
9
+ <ETIME>0</ETIME>
10
+ <DEPLOY_ID>dummy</DEPLOY_ID>
11
+ <MEMORY>512</MEMORY>
12
+ <CPU>1</CPU>
13
+ <NET_TX>12345</NET_TX>
14
+ <NET_RX>0</NET_RX>
15
+ <TEMPLATE>
16
+ <CONTEXT>
17
+ <DNS>192.169.1.4</DNS>
18
+ <TYPE/>
19
+ </CONTEXT>
20
+ <CPU>1</CPU>
21
+ <DISK>
22
+ <READONLY>no</READONLY>
23
+ <SOURCE>/srv/cloud/images/ttylinux/ttylinux.img</SOURCE>
24
+ <TARGET>sda</TARGET>
25
+ </DISK>
26
+ <DISK>
27
+ <READONLY>no</READONLY>
28
+ <SIZE>1024</SIZE>
29
+ <TARGET>sdb</TARGET>
30
+ <TYPE>swap</TYPE>
31
+ </DISK>
32
+ <MEMORY>512</MEMORY>
33
+ <NAME>vm-example</NAME>
34
+ <NIC>
35
+ <MAC>50:20:20:20:20:20</MAC>
36
+ </NIC>
37
+ <OS>
38
+ <INITRD>/initrd.img</INITRD>
39
+ <KERNEL>/vmlinuz</KERNEL>
40
+ <ROOT>sda</ROOT>
41
+ </OS>
42
+ <REQUIREMENTS>MAC="50:20:20:20:20:20"</REQUIREMENTS>
43
+ <VMID>6</VMID>
44
+ </TEMPLATE>
45
+ <HISTORY>
46
+ <SEQ>0</SEQ>
47
+ <HOSTNAME>dummyhost</HOSTNAME>
48
+ <HID>0</HID>
49
+ <STIME>1277375186</STIME>
50
+ <ETIME>0</ETIME>
51
+ <PSTIME>1277375186</PSTIME>
52
+ <PETIME>1277375186</PETIME>
53
+ <RSTIME>1277375186</RSTIME>
54
+ <RETIME>0</RETIME>
55
+ <ESTIME>0</ESTIME>
56
+ <EETIME>0</EETIME>
57
+ <REASON>0</REASON>
58
+ </HISTORY>
59
+ </VM>
@@ -0,0 +1,92 @@
1
+ <VM_POOL>
2
+ <VM>
3
+ <ID>6</ID>
4
+ <UID>0</UID>
5
+ <USERNAME>oneadmin</USERNAME>
6
+ <NAME>vm-example</NAME>
7
+ <LAST_POLL>1277910006</LAST_POLL>
8
+ <STATE>3</STATE>
9
+ <LCM_STATE>3</LCM_STATE>
10
+ <STIME>1277375180</STIME>
11
+ <ETIME>0</ETIME>
12
+ <DEPLOY_ID>dummy</DEPLOY_ID>
13
+ <MEMORY>512</MEMORY>
14
+ <CPU>1</CPU>
15
+ <NET_TX>12345</NET_TX>
16
+ <NET_RX>0</NET_RX>
17
+ <HISTORY>
18
+ <SEQ>0</SEQ>
19
+ <HOSTNAME>dummyhost</HOSTNAME>
20
+ <HID>0</HID>
21
+ <STIME>1277375186</STIME>
22
+ <ETIME>0</ETIME>
23
+ <PSTIME>1277375186</PSTIME>
24
+ <PETIME>1277375186</PETIME>
25
+ <RSTIME>1277375186</RSTIME>
26
+ <RETIME>0</RETIME>
27
+ <ESTIME>0</ESTIME>
28
+ <EETIME>0</EETIME>
29
+ <REASON>0</REASON>
30
+ </HISTORY>
31
+ </VM>
32
+ <VM>
33
+ <ID>7</ID>
34
+ <UID>0</UID>
35
+ <USERNAME>oneadmin</USERNAME>
36
+ <NAME>vm-in</NAME>
37
+ <LAST_POLL>1277910006</LAST_POLL>
38
+ <STATE>3</STATE>
39
+ <LCM_STATE>3</LCM_STATE>
40
+ <STIME>1277377464</STIME>
41
+ <ETIME>0</ETIME>
42
+ <DEPLOY_ID>dummy</DEPLOY_ID>
43
+ <MEMORY>1024</MEMORY>
44
+ <CPU>2</CPU>
45
+ <NET_TX>12345</NET_TX>
46
+ <NET_RX>0</NET_RX>
47
+ <HISTORY>
48
+ <SEQ>0</SEQ>
49
+ <HOSTNAME>thost</HOSTNAME>
50
+ <HID>0</HID>
51
+ <STIME>1277377466</STIME>
52
+ <ETIME>0</ETIME>
53
+ <PSTIME>1277377466</PSTIME>
54
+ <PETIME>1277377466</PETIME>
55
+ <RSTIME>1277377466</RSTIME>
56
+ <RETIME>0</RETIME>
57
+ <ESTIME>0</ESTIME>
58
+ <EETIME>0</EETIME>
59
+ <REASON>0</REASON>
60
+ </HISTORY>
61
+ </VM>
62
+ <VM>
63
+ <ID>8</ID>
64
+ <UID>0</UID>
65
+ <USERNAME>oneadmin</USERNAME>
66
+ <NAME>vmext</NAME>
67
+ <LAST_POLL>1277910006</LAST_POLL>
68
+ <STATE>4</STATE>
69
+ <LCM_STATE>5</LCM_STATE>
70
+ <STIME>1277377533</STIME>
71
+ <ETIME>0</ETIME>
72
+ <DEPLOY_ID>thost</DEPLOY_ID>
73
+ <MEMORY>256</MEMORY>
74
+ <CPU>1</CPU>
75
+ <NET_TX>12345</NET_TX>
76
+ <NET_RX>0</NET_RX>
77
+ <HISTORY>
78
+ <SEQ>0</SEQ>
79
+ <HOSTNAME>thost</HOSTNAME>
80
+ <HID>0</HID>
81
+ <STIME>1277377556</STIME>
82
+ <ETIME>0</ETIME>
83
+ <PSTIME>1277377556</PSTIME>
84
+ <PETIME>1277377556</PETIME>
85
+ <RSTIME>1277377556</RSTIME>
86
+ <RETIME>0</RETIME>
87
+ <ESTIME>0</ESTIME>
88
+ <EETIME>0</EETIME>
89
+ <REASON>0</REASON>
90
+ </HISTORY>
91
+ </VM>
92
+ </VM_POOL>
@@ -0,0 +1,23 @@
1
+ <VNET>
2
+ <ID>3</ID>
3
+ <UID>0</UID>
4
+ <NAME>Red LAN</NAME>
5
+ <TYPE>0</TYPE>
6
+ <BRIDGE>vbr0</BRIDGE>
7
+ <TEMPLATE>
8
+ <BRIDGE>vbr0</BRIDGE>
9
+ <DNS>192.169.1.4</DNS>
10
+ <NAME>Red LAN</NAME>
11
+ <NETWORK_ADDRESS>192.168.0.0</NETWORK_ADDRESS>
12
+ <NETWORK_SIZE>C</NETWORK_SIZE>
13
+ <TYPE>RANGED</TYPE>
14
+ </TEMPLATE>
15
+ <LEASES>
16
+ <LEASE>
17
+ <IP>192.168.0.1</IP>
18
+ <MAC>00:03:c0:a8:00:01</MAC>
19
+ <USED>1</USED>
20
+ <VID>18</VID>
21
+ </LEASE>
22
+ </LEASES>
23
+ </VNET>
@@ -0,0 +1,20 @@
1
+ <VNET_POOL>
2
+ <VNET>
3
+ <ID>4</ID>
4
+ <UID>0</UID>
5
+ <USERNAME>oneadmin</USERNAME>
6
+ <NAME>Red LAN</NAME>
7
+ <TYPE>0</TYPE>
8
+ <BRIDGE>vbr0</BRIDGE>
9
+ <TOTAL_LEASES>0</TOTAL_LEASES>
10
+ </VNET>
11
+ <VNET>
12
+ <ID>5</ID>
13
+ <UID>0</UID>
14
+ <USERNAME>oneadmin</USERNAME>
15
+ <NAME>Public</NAME>
16
+ <TYPE>0</TYPE>
17
+ <BRIDGE>vbr0</BRIDGE>
18
+ <TOTAL_LEASES>1</TOTAL_LEASES>
19
+ </VNET>
20
+ </VNET_POOL>
@@ -0,0 +1,49 @@
1
+ class MockClient
2
+
3
+ def call(action, *args)
4
+ xmlrpc_action = "one."+action
5
+
6
+ case xmlrpc_action
7
+ when "one.vn.info"
8
+ return File.read("fixtures/vnet.xml")
9
+ when "one.vn.allocate"
10
+ return 3
11
+ when "one.vn.delete"
12
+ return nil
13
+ when "one.vm.info"
14
+ return File.read("fixtures/vm.xml")
15
+ when "one.vm.allocate"
16
+ return 6
17
+ when "one.vm.delete"
18
+ return nil
19
+ when "one.vm.action"
20
+ return nil
21
+ when "one.vm.deploy"
22
+ return nil
23
+ when "one.vm.migrate"
24
+ return nil
25
+ when "one.host.info"
26
+ return File.read("fixtures/host.xml")
27
+ when "one.host.allocate"
28
+ return 7
29
+ when "one.host.delete"
30
+ return nil
31
+ when "one.host.enable"
32
+ return nil
33
+ when "one.user.allocate"
34
+ return 3
35
+ when "one.user.info"
36
+ return File.read("fixtures/user.xml")
37
+ when "one.user.delete"
38
+ return nil
39
+ when "one.vnpool.info"
40
+ return File.read("fixtures/vnetpool.xml")
41
+ when "one.vmpool.info"
42
+ return File.read("fixtures/vmpool.xml")
43
+ when "one.hostpool.info"
44
+ return File.read("fixtures/hostpool.xml")
45
+ when "one.userpool.info"
46
+ return File.read("fixtures/userpool.xml")
47
+ end
48
+ end
49
+ end
metadata ADDED
@@ -0,0 +1,131 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: oca
3
+ version: !ruby/object:Gem::Version
4
+ version: 3.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - OpenNebula Project Leads
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-06-12 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: nokogiri
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
30
+ - !ruby/object:Gem::Dependency
31
+ name: xmlparser
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ type: :runtime
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
46
+ description: The OpenNebula Cloud Api, OCA, Ruby bindings
47
+ email: florian.feldhaus@gwdg.de
48
+ executables: []
49
+ extensions: []
50
+ extra_rdoc_files: []
51
+ files:
52
+ - lib/OpenNebula.rb
53
+ - lib/OpenNebula/Acl.rb
54
+ - lib/OpenNebula/AclPool.rb
55
+ - lib/OpenNebula/Group.rb
56
+ - lib/OpenNebula/GroupPool.rb
57
+ - lib/OpenNebula/Host.rb
58
+ - lib/OpenNebula/HostPool.rb
59
+ - lib/OpenNebula/Image.rb
60
+ - lib/OpenNebula/ImagePool.rb
61
+ - lib/OpenNebula/Pool.rb
62
+ - lib/OpenNebula/Template.rb
63
+ - lib/OpenNebula/TemplatePool.rb
64
+ - lib/OpenNebula/User.rb
65
+ - lib/OpenNebula/UserPool.rb
66
+ - lib/OpenNebula/VirtualMachine.rb
67
+ - lib/OpenNebula/VirtualMachinePool.rb
68
+ - lib/OpenNebula/VirtualNetwork.rb
69
+ - lib/OpenNebula/VirtualNetworkPool.rb
70
+ - lib/OpenNebula/XMLUtils.rb
71
+ - lib/oca.rb
72
+ - test/HostPool_spec.rb
73
+ - test/Host_spec.rb
74
+ - test/UserPool_spec.rb
75
+ - test/User_spec.rb
76
+ - test/VirtualMachinePool_spec.rb
77
+ - test/VirtualMachine_spec.rb
78
+ - test/VirtualNetworkPool_spec.rb
79
+ - test/VirtualNetwork_spec.rb
80
+ - test/fixtures/host.xml
81
+ - test/fixtures/hostpool.xml
82
+ - test/fixtures/user.xml
83
+ - test/fixtures/userpool.xml
84
+ - test/fixtures/vm.xml
85
+ - test/fixtures/vmpool.xml
86
+ - test/fixtures/vnet.xml
87
+ - test/fixtures/vnetpool.xml
88
+ - test/helpers/MockClient.rb
89
+ homepage: https://github.com/ffeldhaus/opennebula
90
+ licenses: []
91
+ post_install_message:
92
+ rdoc_options: []
93
+ require_paths:
94
+ - lib
95
+ required_ruby_version: !ruby/object:Gem::Requirement
96
+ none: false
97
+ requirements:
98
+ - - ! '>='
99
+ - !ruby/object:Gem::Version
100
+ version: 1.8.7
101
+ required_rubygems_version: !ruby/object:Gem::Requirement
102
+ none: false
103
+ requirements:
104
+ - - ! '>='
105
+ - !ruby/object:Gem::Version
106
+ version: '0'
107
+ requirements: []
108
+ rubyforge_project:
109
+ rubygems_version: 1.8.19
110
+ signing_key:
111
+ specification_version: 3
112
+ summary: OCA bindings
113
+ test_files:
114
+ - test/HostPool_spec.rb
115
+ - test/Host_spec.rb
116
+ - test/UserPool_spec.rb
117
+ - test/User_spec.rb
118
+ - test/VirtualMachinePool_spec.rb
119
+ - test/VirtualMachine_spec.rb
120
+ - test/VirtualNetworkPool_spec.rb
121
+ - test/VirtualNetwork_spec.rb
122
+ - test/fixtures/host.xml
123
+ - test/fixtures/hostpool.xml
124
+ - test/fixtures/user.xml
125
+ - test/fixtures/userpool.xml
126
+ - test/fixtures/vm.xml
127
+ - test/fixtures/vmpool.xml
128
+ - test/fixtures/vnet.xml
129
+ - test/fixtures/vnetpool.xml
130
+ - test/helpers/MockClient.rb
131
+ has_rdoc: