occi-api 4.0.0.alpha.1 → 4.0.0.alpha.2

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.
@@ -0,0 +1,266 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: head
5
+ uri: https://localhost:3300/
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - text/plain,text/occi;q=0.2
12
+ response:
13
+ status:
14
+ code: 200
15
+ message: OK
16
+ headers:
17
+ Date:
18
+ - Thu, 10 Jan 2013 17:44:39 GMT
19
+ Server:
20
+ - Apache/2.2.20 (Ubuntu)
21
+ X-Powered-By:
22
+ - Phusion Passenger (mod_rails/mod_rack) 3.0.12
23
+ X-Frame-Options:
24
+ - sameorigin
25
+ X-Xss-Protection:
26
+ - 1; mode=block
27
+ Accept:
28
+ - application/occi+json,application/json,text/plain,text/uri-list,application/xml,text/xml,application/occi+xml,text/occi
29
+ Set-Cookie:
30
+ - GRIDHTTP_PASSCODE=ec9b4b21351052e5aPTUJs; domain=localhost; path=/;
31
+ secure
32
+ - rack.session=BAh7B0kiD3Nlc3Npb25faWQGOgZFRiJFZTIyZmM5ZmI2OTliY2JiZWQyMjYz%0AN2IyNTQ3NjMyMDkxYTFkNWVhOGIwYjVkYTNhYTllMTYyYjdkZTZiMzhkY0ki%0ADXRyYWNraW5nBjsARnsISSIUSFRUUF9VU0VSX0FHRU5UBjsARiItZGEzOWEz%0AZWU1ZTZiNGIwZDMyNTViZmVmOTU2MDE4OTBhZmQ4MDcwOUkiGUhUVFBfQUND%0ARVBUX0VOQ09ESU5HBjsARiItZGEzOWEzZWU1ZTZiNGIwZDMyNTViZmVmOTU2%0AMDE4OTBhZmQ4MDcwOUkiGUhUVFBfQUNDRVBUX0xBTkdVQUdFBjsARiItZGEz%0AOWEzZWU1ZTZiNGIwZDMyNTViZmVmOTU2MDE4OTBhZmQ4MDcwOQ%3D%3D%0A--24c9906d0e0c02c6976b065151f161a7e299022a;
33
+ path=/; HttpOnly
34
+ Content-Length:
35
+ - '294'
36
+ Status:
37
+ - '200'
38
+ Vary:
39
+ - Accept-Encoding
40
+ Content-Type:
41
+ - text/plain;charset=utf-8
42
+ body:
43
+ encoding: US-ASCII
44
+ string: ''
45
+ http_version:
46
+ recorded_at: Thu, 10 Jan 2013 17:44:39 GMT
47
+ - request:
48
+ method: head
49
+ uri: https://localhost:3300/
50
+ body:
51
+ encoding: US-ASCII
52
+ string: ''
53
+ headers:
54
+ Accept:
55
+ - text/plain,text/occi
56
+ response:
57
+ status:
58
+ code: 200
59
+ message: OK
60
+ headers:
61
+ Date:
62
+ - Thu, 10 Jan 2013 17:45:23 GMT
63
+ Server:
64
+ - Apache/2.2.20 (Ubuntu)
65
+ X-Powered-By:
66
+ - Phusion Passenger (mod_rails/mod_rack) 3.0.12
67
+ X-Frame-Options:
68
+ - sameorigin
69
+ X-Xss-Protection:
70
+ - 1; mode=block
71
+ Accept:
72
+ - application/occi+json,application/json,text/plain,text/uri-list,application/xml,text/xml,application/occi+xml,text/occi
73
+ Set-Cookie:
74
+ - GRIDHTTP_PASSCODE=d7c3abb1b0e7ed9fvhjCIQ; domain=localhost; path=/;
75
+ secure
76
+ - rack.session=BAh7B0kiD3Nlc3Npb25faWQGOgZFRiJFNmRmZGYwZjgwZTY0NDc5OGUyMjdm%0AMTM3MjlkNWMwOWIwNzhiNzU0YjAyYTg2YzE1M2EwNTUzNzk2OTA3ODg3Mkki%0ADXRyYWNraW5nBjsARnsISSIUSFRUUF9VU0VSX0FHRU5UBjsARiItZGEzOWEz%0AZWU1ZTZiNGIwZDMyNTViZmVmOTU2MDE4OTBhZmQ4MDcwOUkiGUhUVFBfQUND%0ARVBUX0VOQ09ESU5HBjsARiItZGEzOWEzZWU1ZTZiNGIwZDMyNTViZmVmOTU2%0AMDE4OTBhZmQ4MDcwOUkiGUhUVFBfQUNDRVBUX0xBTkdVQUdFBjsARiItZGEz%0AOWEzZWU1ZTZiNGIwZDMyNTViZmVmOTU2MDE4OTBhZmQ4MDcwOQ%3D%3D%0A--bcf3b29269a450e7b643e4d5405e53684c99e9f9;
77
+ path=/; HttpOnly
78
+ Content-Length:
79
+ - '294'
80
+ Status:
81
+ - '200'
82
+ Vary:
83
+ - Accept-Encoding
84
+ Content-Type:
85
+ - text/plain;charset=utf-8
86
+ body:
87
+ encoding: US-ASCII
88
+ string: ''
89
+ http_version:
90
+ recorded_at: Thu, 10 Jan 2013 17:45:23 GMT
91
+ - request:
92
+ method: get
93
+ uri: https://localhost:3300/-/
94
+ body:
95
+ encoding: US-ASCII
96
+ string: ''
97
+ headers:
98
+ Accept:
99
+ - text/plain,text/occi
100
+ response:
101
+ status:
102
+ code: 200
103
+ message: OK
104
+ headers:
105
+ Date:
106
+ - Thu, 10 Jan 2013 17:45:23 GMT
107
+ Server:
108
+ - Apache/2.2.20 (Ubuntu)
109
+ X-Powered-By:
110
+ - Phusion Passenger (mod_rails/mod_rack) 3.0.12
111
+ X-Frame-Options:
112
+ - sameorigin
113
+ X-Xss-Protection:
114
+ - 1; mode=block
115
+ Accept:
116
+ - application/occi+json,application/json,text/plain,text/uri-list,application/xml,text/xml,application/occi+xml,text/occi
117
+ Set-Cookie:
118
+ - GRIDHTTP_PASSCODE=71a7332acbb36377l0DYiu; domain=localhost; path=/;
119
+ secure
120
+ - rack.session=BAh7B0kiD3Nlc3Npb25faWQGOgZFRiJFOGRmOGI1ODgwZTI2NzhkZWVjODFl%0AODAwOTMwZDkwMjc1NGNlN2MxZjg5NGI2YTZkNWVhOTE3Nzc1OTg1OTFiOUki%0ADXRyYWNraW5nBjsARnsISSIUSFRUUF9VU0VSX0FHRU5UBjsARiItZGEzOWEz%0AZWU1ZTZiNGIwZDMyNTViZmVmOTU2MDE4OTBhZmQ4MDcwOUkiGUhUVFBfQUND%0ARVBUX0VOQ09ESU5HBjsARiItZGEzOWEzZWU1ZTZiNGIwZDMyNTViZmVmOTU2%0AMDE4OTBhZmQ4MDcwOUkiGUhUVFBfQUNDRVBUX0xBTkdVQUdFBjsARiItZGEz%0AOWEzZWU1ZTZiNGIwZDMyNTViZmVmOTU2MDE4OTBhZmQ4MDcwOQ%3D%3D%0A--f141bb38b0aa273eea158df0b71202f4ecfa04cc;
121
+ path=/; HttpOnly
122
+ Content-Length:
123
+ - '8975'
124
+ Status:
125
+ - '200'
126
+ Vary:
127
+ - Accept-Encoding
128
+ Content-Type:
129
+ - text/plain;charset=utf-8
130
+ body:
131
+ encoding: US-ASCII
132
+ string: ! 'Category: entity;scheme="http://schemas.ogf.org/occi/core#";class="kind";title="Entity";location="/entity/";attributes="occi.core.id
133
+ occi.core.title"
134
+
135
+ Category: resource;scheme="http://schemas.ogf.org/occi/core#";class="kind";title="Resource";rel="http://schemas.ogf.org/occi/core#entity";location="/resource/";attributes="occi.core.summary"
136
+
137
+ Category: link;scheme="http://schemas.ogf.org/occi/core#";class="kind";title="Link";rel="http://schemas.ogf.org/occi/core#entity";location="/link/";attributes="occi.core.target
138
+ occi.core.source"
139
+
140
+ Category: compute;scheme="http://schemas.ogf.org/occi/infrastructure#";class="kind";title="Compute
141
+ Resource";rel="http://schemas.ogf.org/occi/core#resource";location="/compute/";attributes="occi.compute.architecture
142
+ occi.compute.cores occi.compute.hostname occi.compute.speed occi.compute.memory
143
+ occi.compute.state";actions="http://schemas.ogf.org/occi/infrastructure/compute/action#start
144
+ http://schemas.ogf.org/occi/infrastructure/compute/action#stop http://schemas.ogf.org/occi/infrastructure/compute/action#restart
145
+ http://schemas.ogf.org/occi/infrastructure/compute/action#suspend"
146
+
147
+ Category: storagelink;scheme="http://schemas.ogf.org/occi/infrastructure#";class="kind";title="Storage
148
+ Link";rel="http://schemas.ogf.org/occi/core#link";location="/storagelink/";attributes="occi.storagelink.deviceid
149
+ occi.storagelink.mountpoint occi.storagelink.state"
150
+
151
+ Category: network;scheme="http://schemas.ogf.org/occi/infrastructure#";class="kind";title="Network
152
+ Resource";rel="http://schemas.ogf.org/occi/core#resource";location="/network/";attributes="occi.network.vlan
153
+ occi.network.label occi.network.state org.opennebula.network.id org.opennebula.network.bridge
154
+ org.opennebula.network.vlan org.opennebula.network.phydev org.opennebula.network.ip_start
155
+ org.opennebula.network.ip_end";actions="http://schemas.ogf.org/occi/infrastructure/network/action#up
156
+ http://schemas.ogf.org/occi/infrastructure/network/action#down"
157
+
158
+ Category: storage;scheme="http://schemas.ogf.org/occi/infrastructure#";class="kind";title="Storage
159
+ Resource";rel="http://schemas.ogf.org/occi/core#resource";location="/storage/";attributes="occi.storage.size
160
+ occi.storage.state org.opennebula.storage.id org.opennebula.storage.type org.opennebula.storage.persistent
161
+ org.opennebula.storage.dev_prefix org.opennebula.storage.bus org.opennebula.storage.driver
162
+ org.opennebula.storage.fstype";actions="http://schemas.ogf.org/occi/infrastructure/storage/action#online
163
+ http://schemas.ogf.org/occi/infrastructure/storage/action#offline http://schemas.ogf.org/occi/infrastructure/storage/action#backup
164
+ http://schemas.ogf.org/occi/infrastructure/storage/action#snapshot http://schemas.ogf.org/occi/infrastructure/storage/action#resize"
165
+
166
+ Category: networkinterface;scheme="http://schemas.ogf.org/occi/infrastructure#";class="kind";title="Networkinterface";rel="http://schemas.ogf.org/occi/core#link";location="/networkinterface/";attributes="occi.networkinterface.interface
167
+ occi.networkinterface.mac occi.networkinterface.state"
168
+
169
+ Category: console;scheme="http://schemas.ogf.org/occi/infrastructure/compute#";class="kind";title="Link
170
+ to the VM''s console";rel="http://schemas.ogf.org/occi/core#link";location="/console/"
171
+
172
+ Category: os_tpl;scheme="http://schemas.ogf.org/occi/infrastructure#";class="mixin";title="Operating
173
+ System Template";location="/mixins/os_tpl/"
174
+
175
+ Category: ipnetwork;scheme="http://schemas.ogf.org/occi/infrastructure/network#";class="mixin";title="IP
176
+ Network Mixin";location="/mixins/ipnetwork/";attributes="occi.network.address
177
+ occi.network.gateway occi.network.allocation occi.network.state"
178
+
179
+ Category: ipnetworkinterface;scheme="http://schemas.ogf.org/occi/infrastructure/networkinterface#";class="mixin";title="IP
180
+ Networkinterface Mixin";location="/mixins/ipnetworkinterface/";attributes="occi.networkinterface.address
181
+ occi.networkinterface.gateway occi.networkinterface.allocation occi.networkinterface.state"
182
+
183
+ Category: resource_tpl;scheme="http://schemas.ogf.org/occi/infrastructure#";class="mixin";title="Resource
184
+ Template";location="/mixins/resource_tpl/"
185
+
186
+ Category: compute;scheme="http://opennebula.org/occi/infrastructure#";class="mixin";title="OpenNebula
187
+ specific Compute attributes";location="/mixins/compute/";attributes="org.opennebula.compute.cpu
188
+ org.opennebula.compute.kernel org.opennebula.compute.initrd org.opennebula.compute.root
189
+ org.opennebula.compute.kernel_cmd org.opennebula.compute.bootloader org.opennebula.compute.boot"
190
+
191
+ Category: storagelink;scheme="http://opennebula.org/occi/infrastructure#";class="mixin";title="OpenNebula
192
+ specific Storagelink attributes";location="/mixins/storagelink/";attributes="org.opennebula.storagelink.bus
193
+ org.opennebula.storagelink.driver"
194
+
195
+ Category: network;scheme="http://opennebula.org/occi/infrastructure#";class="mixin";title="OpenNebula
196
+ specific Network attributes";location="/mixins/network/";attributes="org.opennebula.network.id
197
+ org.opennebula.network.bridge org.opennebula.network.vlan org.opennebula.network.phydev
198
+ org.opennebula.network.ip_start org.opennebula.network.ip_end"
199
+
200
+ Category: storage;scheme="http://opennebula.org/occi/infrastructure#";class="mixin";title="OpenNebula
201
+ specific Storage attributes";location="/mixins/storage/";attributes="org.opennebula.storage.id
202
+ org.opennebula.storage.type org.opennebula.storage.persistent org.opennebula.storage.dev_prefix
203
+ org.opennebula.storage.bus org.opennebula.storage.driver org.opennebula.storage.fstype"
204
+
205
+ Category: networkinterface;scheme="http://opennebula.org/occi/infrastructure#";class="mixin";title="OpenNebula
206
+ specific Networkinterface attributes";location="/mixins/networkinterface/";attributes="org.opennebula.networkinterface.bridge
207
+ org.opennebula.networkinterface.script org.opennebula.networkinterface.model
208
+ org.opennebula.networkinterface.white_ports_tcp org.opennebula.networkinterface.black_ports_tcp
209
+ org.opennebula.networkinterface.white_ports_udp org.opennebula.networkinterface.black_ports_udp
210
+ org.opennebula.networkinterface.icmp"
211
+
212
+ Category: large;scheme="http://occi.localhost:3300/occi/infrastructure/resource_tpl#";class="mixin";title="Large
213
+ Instance";rel="http://schemas.ogf.org/occi/infrastructure#resource_tpl";location="/mixins/large/";attributes="occi.compute.architecture
214
+ occi.compute.cores occi.compute.speed occi.compute.memory"
215
+
216
+ Category: extra_large;scheme="http://occi.localhost:3300/occi/infrastructure/resource_tpl#";class="mixin";title="Extra
217
+ Large Instance";rel="http://schemas.ogf.org/occi/infrastructure#resource_tpl";location="/mixins/extra_large/";attributes="occi.compute.architecture
218
+ occi.compute.cores occi.compute.speed occi.compute.memory"
219
+
220
+ Category: medium;scheme="http://occi.localhost:3300/occi/infrastructure/resource_tpl#";class="mixin";title="Medium
221
+ Instance";rel="http://schemas.ogf.org/occi/infrastructure#resource_tpl";location="/mixins/medium/";attributes="occi.compute.architecture
222
+ occi.compute.cores occi.compute.speed occi.compute.memory"
223
+
224
+ Category: small;scheme="http://occi.localhost:3300/occi/infrastructure/resource_tpl#";class="mixin";title="Small
225
+ Instance";rel="http://schemas.ogf.org/occi/infrastructure#resource_tpl";location="/mixins/small/";attributes="occi.compute.architecture
226
+ occi.compute.cores occi.compute.speed occi.compute.memory"
227
+
228
+ Category: mytesttemplate;scheme="http://occi.localhost:3300/occi/infrastructure/os_tpl#";class="mixin";title="MyTestTemplate";rel="http://schemas.ogf.org/occi/infrastructure#os_tpl";location="/mixins/mytesttemplate/"
229
+
230
+ Category: start;scheme="http://schemas.ogf.org/occi/infrastructure/compute/action#";class="action";title="Start
231
+ Compute instance"
232
+
233
+ Category: stop;scheme="http://schemas.ogf.org/occi/infrastructure/compute/action#";class="action";title="Stop
234
+ Compute instance";attributes="method"
235
+
236
+ Category: restart;scheme="http://schemas.ogf.org/occi/infrastructure/compute/action#";class="action";title="Restart
237
+ Compute instance";attributes="method"
238
+
239
+ Category: suspend;scheme="http://schemas.ogf.org/occi/infrastructure/compute/action#";class="action";title="Suspend
240
+ Compute instance";attributes="method"
241
+
242
+ Category: up;scheme="http://schemas.ogf.org/occi/infrastructure/network/action#";class="action";title="Activate
243
+ network"
244
+
245
+ Category: down;scheme="http://schemas.ogf.org/occi/infrastructure/network/action#";class="action";title="Activate
246
+ network"
247
+
248
+ Category: online;scheme="http://schemas.ogf.org/occi/infrastructure/storage/action#";class="action";title="Activate
249
+ Storage"
250
+
251
+ Category: offline;scheme="http://schemas.ogf.org/occi/infrastructure/storage/action#";class="action";title="Deactivate
252
+ Storage"
253
+
254
+ Category: backup;scheme="http://schemas.ogf.org/occi/infrastructure/storage/action#";class="action";title="Backup
255
+ Storage"
256
+
257
+ Category: snapshot;scheme="http://schemas.ogf.org/occi/infrastructure/storage/action#";class="action";title="Snapshot
258
+ Storage"
259
+
260
+ Category: resize;scheme="http://schemas.ogf.org/occi/infrastructure/storage/action#";class="action";title="Resize
261
+ Storage";attributes="size"
262
+
263
+ '
264
+ http_version:
265
+ recorded_at: Thu, 10 Jan 2013 17:45:24 GMT
266
+ recorded_with: VCR 2.4.0
@@ -1,5 +1,5 @@
1
1
  require 'rspec'
2
- require 'occi/api/client/http/authn_utils'
2
+ require 'occi/api/client/authn_utils'
3
3
 
4
4
  module Occi
5
5
  module Api
@@ -188,15 +188,32 @@ module Occi
188
188
  end
189
189
 
190
190
  it "finds and describes unscoped mixin" do
191
- @client.find_mixin('mytesttemplate', nil, true)
191
+ mxn = @client.find_mixin('mytesttemplate', nil, true)
192
+ mxn.type_identifier.should eq 'http://occi.localhost:3300/occi/infrastructure/os_tpl#mytesttemplate'
192
193
  end
193
194
 
194
195
  it "finds and describes scoped os_tpl mixin" do
195
- @client.find_mixin('mytesttemplate', "os_tpl", true)
196
+ mxn = @client.find_mixin('mytesttemplate', "os_tpl", true)
197
+ mxn.type_identifier.should eq 'http://occi.localhost:3300/occi/infrastructure/os_tpl#mytesttemplate'
196
198
  end
197
199
 
198
200
  it "finds and describes scoped resource_tpl mixin" do
199
- @client.find_mixin('large', "resource_tpl", true)
201
+ mxn = @client.find_mixin('large', "resource_tpl", true)
202
+ mxn.type_identifier.should eq 'http://occi.localhost:3300/occi/infrastructure/resource_tpl#large'
203
+ end
204
+
205
+ it "returns nil when looking for a non-existent mixin" do
206
+ mxn = @client.find_mixin('blablabla', nil, true)
207
+ mxn.should be_nil
208
+ end
209
+
210
+ it "returns nil when looking for a non-existent mixin of a specific type" do
211
+ mxn = @client.find_mixin('blablabla', 'os_tpl', true)
212
+ mxn.should be_nil
213
+ end
214
+
215
+ it "raises an error when looking for a non-existent mixin type" do
216
+ expect{ @client.find_mixin('blablabla', 'blabla', true) }.to raise_error
200
217
  end
201
218
 
202
219
  it "creates a new compute resource"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: occi-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.0.alpha.1
4
+ version: 4.0.0.alpha.2
5
5
  prerelease: 6
6
6
  platform: ruby
7
7
  authors:
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2013-07-10 00:00:00.000000000 Z
14
+ date: 2013-07-18 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: occi-core
@@ -285,6 +285,7 @@ files:
285
285
  - features/occi/infrastructure/create/step_definitions/create_steps.rb
286
286
  - features/support/env.rb
287
287
  - lib/occi-api.rb
288
+ - lib/occi/api/client/authn_utils.rb
288
289
  - lib/occi/api/client/client_amqp.rb
289
290
  - lib/occi/api/client/client_base.rb
290
291
  - lib/occi/api/client/client_http.rb
@@ -297,7 +298,6 @@ files:
297
298
  - lib/occi/api/client/http/authn_plugins/dummy.rb
298
299
  - lib/occi/api/client/http/authn_plugins/keystone.rb
299
300
  - lib/occi/api/client/http/authn_plugins/x509.rb
300
- - lib/occi/api/client/http/authn_utils.rb
301
301
  - lib/occi/api/client/http/httparty_fix.rb
302
302
  - lib/occi/api/client/http/net_http_fix.rb
303
303
  - lib/occi/api/dsl.rb
@@ -337,23 +337,27 @@ files:
337
337
  - spec/cassettes/Occi_Api_Client_ClientHttp/using_media_type_text_plain/lists_os_tpl_mixins.yml
338
338
  - spec/cassettes/Occi_Api_Client_ClientHttp/using_media_type_text_plain/lists_resource_tpl_mixins.yml
339
339
  - spec/cassettes/Occi_Api_Client_ClientHttp/using_media_type_text_plain/lists_storage_resources.yml
340
+ - spec/cassettes/Occi_Api_Client_ClientHttp/using_media_type_text_plain/raises_an_error_when_looking_for_a_non-existent_mixin_type.yml
340
341
  - spec/cassettes/Occi_Api_Client_ClientHttp/using_media_type_text_plain/refreshes_its_model.yml
342
+ - spec/cassettes/Occi_Api_Client_ClientHttp/using_media_type_text_plain/returns_nil_when_looking_for_a_non-existent_mixin.yml
343
+ - spec/cassettes/Occi_Api_Client_ClientHttp/using_media_type_text_plain/returns_nil_when_looking_for_a_non-existent_mixin_of_a_specific_type.yml
341
344
  - spec/cassettes/Occi_Api_Client_ClientHttp/using_media_type_text_plain/triggers_an_action_on_a_compute_resource.yml
342
345
  - spec/cassettes/Occi_Api_Client_ClientHttp/using_media_type_text_plain/triggers_an_action_on_a_network_resource.yml
343
346
  - spec/cassettes/Occi_Api_Client_ClientHttp/using_media_type_text_plain/triggers_an_action_on_a_storage_resource.yml
347
+ - spec/occi/api/client/authn_utils_spec.rb
344
348
  - spec/occi/api/client/client_amqp_spec.rb
345
349
  - spec/occi/api/client/client_http_spec.rb
346
- - spec/occi/api/client/http/authn_utils_spec.rb
347
350
  - spec/occi/api/client/http/httparty_fix_spec.rb
348
351
  - spec/occi/api/client/http/net_http_fix_spec.rb
349
- - spec/occi/api/client/http/rocci-cred-cert.pem
350
- - spec/occi/api/client/http/rocci-cred-key-jruby.pem
351
- - spec/occi/api/client/http/rocci-cred-key.pem
352
- - spec/occi/api/client/http/rocci-cred.p12
352
+ - spec/occi/api/client/rocci-cred-cert.pem
353
+ - spec/occi/api/client/rocci-cred-key-jruby.pem
354
+ - spec/occi/api/client/rocci-cred-key.pem
355
+ - spec/occi/api/client/rocci-cred.p12
353
356
  - spec/occi/api/dsl_spec.rb
354
357
  - spec/spec_helper.rb
355
358
  homepage: https://github.com/gwdg/rOCCI-api
356
- licenses: []
359
+ licenses:
360
+ - Apache License, Version 2.0
357
361
  post_install_message:
358
362
  rdoc_options: []
359
363
  require_paths: