occi-core 4.1.3 → 4.2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +1 -0
- data/Gemfile +8 -0
- data/README.md +49 -17
- data/lib/occi/collection.rb +37 -21
- data/lib/occi/core/action.rb +5 -5
- data/lib/occi/core/action_instance.rb +45 -3
- data/lib/occi/core/actions.rb +2 -1
- data/lib/occi/core/attributes.rb +253 -73
- data/lib/occi/core/categories.rb +1 -0
- data/lib/occi/core/category.rb +25 -8
- data/lib/occi/core/entities.rb +1 -0
- data/lib/occi/core/entity.rb +51 -74
- data/lib/occi/core/kind.rb +15 -11
- data/lib/occi/core/kinds.rb +1 -1
- data/lib/occi/core/link.rb +14 -15
- data/lib/occi/core/links.rb +1 -1
- data/lib/occi/core/mixin.rb +5 -5
- data/lib/occi/core/mixins.rb +2 -2
- data/lib/occi/core/properties.rb +90 -12
- data/lib/occi/core/resource.rb +7 -3
- data/lib/occi/core/resources.rb +2 -2
- data/lib/occi/errors/attribute_definitions_converted_error.rb +5 -0
- data/lib/occi/errors/attribute_missing_error.rb +5 -0
- data/lib/occi/errors/attribute_name_invalid_error.rb +5 -0
- data/lib/occi/errors/attribute_not_defined_error.rb +5 -0
- data/lib/occi/errors/attribute_property_type_error.rb +5 -0
- data/lib/occi/errors/attribute_type_error.rb +5 -0
- data/lib/occi/errors/kind_not_defined_error.rb +5 -0
- data/lib/occi/errors/parser_input_error.rb +5 -0
- data/lib/occi/errors/parser_type_error.rb +5 -0
- data/lib/occi/errors.rb +1 -0
- data/lib/occi/extensions/hashie.rb +25 -0
- data/lib/occi/helpers/comparators/action_instance.rb +22 -0
- data/lib/occi/helpers/comparators/attributes.rb +22 -0
- data/lib/occi/helpers/comparators/categories.rb +22 -0
- data/lib/occi/helpers/comparators/category.rb +22 -0
- data/lib/occi/helpers/comparators/collection.rb +40 -0
- data/lib/occi/helpers/comparators/entities.rb +22 -0
- data/lib/occi/helpers/comparators/entity.rb +22 -0
- data/lib/occi/helpers/comparators/properties.rb +26 -0
- data/lib/occi/helpers/comparators.rb +1 -0
- data/lib/occi/infrastructure/compute.rb +11 -9
- data/lib/occi/infrastructure/network.rb +27 -27
- data/lib/occi/infrastructure/networkinterface.rb +22 -23
- data/lib/occi/infrastructure/os_tpl.rb +1 -1
- data/lib/occi/infrastructure/resource_tpl.rb +1 -1
- data/lib/occi/infrastructure/storage.rb +7 -6
- data/lib/occi/infrastructure/storagelink.rb +4 -4
- data/lib/occi/log.rb +13 -10
- data/lib/occi/model.rb +9 -8
- data/lib/occi/parser/json.rb +11 -9
- data/lib/occi/parser/ova.rb +12 -6
- data/lib/occi/parser/ovf.rb +173 -116
- data/lib/occi/parser/text/constants.rb +87 -0
- data/lib/occi/parser/text.rb +161 -200
- data/lib/occi/parser/xml.rb +10 -8
- data/lib/occi/parser.rb +100 -50
- data/lib/occi/settings.rb +2 -1
- data/lib/occi/version.rb +1 -1
- data/lib/occi-core.rb +6 -4
- data/occi-core.gemspec +0 -7
- data/spec/occi/collection_samples/collection1.json +1 -0
- data/spec/occi/collection_samples/directory2/collection2.json +1 -0
- data/spec/occi/collection_spec.rb +961 -31
- data/spec/occi/core/action_instance_spec.rb +317 -0
- data/spec/occi/core/action_spec.rb +71 -0
- data/spec/occi/core/attributes_spec.rb +582 -27
- data/spec/occi/core/category_spec.rb +194 -18
- data/spec/occi/core/entities_spec.rb +96 -0
- data/spec/occi/core/entity_spec.rb +317 -28
- data/spec/occi/core/kind_spec.rb +127 -16
- data/spec/occi/core/link_spec.rb +35 -0
- data/spec/occi/core/links_spec.rb +130 -0
- data/spec/occi/core/mixins_spec.rb +107 -0
- data/spec/occi/core/properties_spec.rb +167 -0
- data/spec/occi/core/resource_spec.rb +23 -9
- data/spec/occi/core_spec.rb +12 -0
- data/spec/occi/infrastructure/compute_spec.rb +218 -18
- data/spec/occi/infrastructure/network_spec.rb +96 -0
- data/spec/occi/infrastructure/networkinterface_spec.rb +96 -0
- data/spec/occi/infrastructure/storage_spec.rb +33 -0
- data/spec/occi/infrastructure/storagelink_spec.rb +45 -0
- data/spec/occi/log_spec.rb +104 -1
- data/spec/occi/model_spec.rb +251 -39
- data/spec/occi/{test.json → parser/json_samples/test.json} +0 -0
- data/spec/occi/parser/ova_samples/test.dump +0 -0
- data/spec/occi/{test.ova → parser/ova_samples/test.ova} +0 -0
- data/spec/occi/parser/ovf_samples/test.dump +0 -0
- data/spec/occi/{test.ovf → parser/ovf_samples/test.ovf} +0 -0
- data/spec/occi/parser/text_samples/occi_categories.dump +0 -0
- data/spec/occi/parser/text_samples/occi_categories.text +2 -0
- data/spec/occi/parser/text_samples/occi_compute_rocci_server.dump +0 -0
- data/spec/occi/parser/text_samples/occi_compute_rocci_server.resource.dump +0 -0
- data/spec/occi/parser/text_samples/occi_compute_rocci_server.text +10 -0
- data/spec/occi/parser/text_samples/occi_link_resource_instance.dump +0 -0
- data/spec/occi/parser/text_samples/occi_link_resource_instance.text +7 -0
- data/spec/occi/parser/text_samples/occi_link_simple.dump +0 -0
- data/spec/occi/parser/text_samples/occi_link_simple.link_string.dump +0 -0
- data/spec/occi/parser/text_samples/occi_link_simple.text +1 -0
- data/spec/occi/parser/text_samples/occi_link_w_attributes.dump +0 -0
- data/spec/occi/parser/text_samples/occi_link_w_attributes.text +7 -0
- data/spec/occi/parser/text_samples/occi_link_w_category.dump +0 -0
- data/spec/occi/parser/text_samples/occi_link_w_category.text +3 -0
- data/spec/occi/parser/text_samples/occi_model_rocci_server.dump +0 -0
- data/spec/occi/parser/text_samples/occi_model_rocci_server.text +51 -0
- data/spec/occi/parser/text_samples/occi_network_rocci_server.dump +0 -0
- data/spec/occi/parser/text_samples/occi_network_rocci_server.resource.dump +0 -0
- data/spec/occi/parser/text_samples/occi_network_rocci_server.text +11 -0
- data/spec/occi/parser/text_samples/occi_resource_w_attributes.dump +0 -0
- data/spec/occi/parser/text_samples/occi_resource_w_attributes.text +11 -0
- data/spec/occi/parser/text_samples/occi_resource_w_inline_links.dump +0 -0
- data/spec/occi/parser/text_samples/occi_resource_w_inline_links.text +16 -0
- data/spec/occi/parser/text_samples/occi_resource_w_inline_links_only.dump +0 -0
- data/spec/occi/parser/text_samples/occi_resource_w_inline_links_only.text +13 -0
- data/spec/occi/parser/text_samples/occi_storage_rocci_server.dump +0 -0
- data/spec/occi/parser/text_samples/occi_storage_rocci_server.resource.dump +0 -0
- data/spec/occi/parser/text_samples/occi_storage_rocci_server.text +9 -0
- data/spec/occi/parser/text_spec.rb +274 -78
- data/spec/occi/parser/xml_samples/test.xml +352 -0
- data/spec/occi/parser_spec.rb +255 -104
- data/spec/occi-core_spec.rb +31 -0
- data/spec/spec_helper.rb +6 -2
- metadata +110 -111
- checksums.yaml +0 -7
- data/spec/occi/core/attribute_spec.rb +0 -0
data/spec/occi/model_spec.rb
CHANGED
@@ -1,51 +1,263 @@
|
|
1
1
|
module Occi
|
2
2
|
describe "Model" do
|
3
3
|
|
4
|
-
|
5
|
-
|
6
|
-
model
|
7
|
-
|
8
|
-
|
4
|
+
context '#get_by_id' do
|
5
|
+
|
6
|
+
context 'Core model' do
|
7
|
+
let(:model){ Occi::Model.new }
|
8
|
+
it 'returns correct kind for entity' do
|
9
|
+
expect(model.get_by_id('http://schemas.ogf.org/occi/core#entity')).to be_kind_of Occi::Core::Kind
|
10
|
+
end
|
11
|
+
|
12
|
+
it 'returns correct kind for resource' do
|
13
|
+
expect(model.get_by_id('http://schemas.ogf.org/occi/core#resource')).to be_kind_of Occi::Core::Kind
|
14
|
+
end
|
15
|
+
|
16
|
+
it 'returns correct kind for resource' do
|
17
|
+
expect(model.get_by_id('http://schemas.ogf.org/occi/core#link')).to be_kind_of Occi::Core::Kind
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
context 'Infrastructure model' do
|
22
|
+
let(:model){ model = Occi::Model.new
|
23
|
+
model.register_infrastructure
|
24
|
+
model
|
25
|
+
}
|
26
|
+
|
27
|
+
it 'returns correct kind for compute' do
|
28
|
+
expect(model.get_by_id('http://schemas.ogf.org/occi/infrastructure#compute')).to be_kind_of Occi::Core::Kind
|
29
|
+
end
|
30
|
+
|
31
|
+
it 'returns correct kind for os_tpl' do
|
32
|
+
expect(model.get_by_id('http://schemas.ogf.org/occi/infrastructure#os_tpl')).to be_kind_of Occi::Core::Mixin
|
33
|
+
end
|
34
|
+
|
35
|
+
it 'returns correct kind for resource_tpl' do
|
36
|
+
expect(model.get_by_id('http://schemas.ogf.org/occi/infrastructure#resource_tpl')).to be_kind_of Occi::Core::Mixin
|
37
|
+
end
|
38
|
+
|
39
|
+
it 'returns correct kind for network' do
|
40
|
+
expect(model.get_by_id('http://schemas.ogf.org/occi/infrastructure#network')).to be_kind_of Occi::Core::Kind
|
41
|
+
end
|
42
|
+
|
43
|
+
it 'returns correct kind for ipnetwork' do
|
44
|
+
expect(model.get_by_id('http://schemas.ogf.org/occi/infrastructure/network#ipnetwork')).to be_kind_of Occi::Core::Mixin
|
45
|
+
end
|
46
|
+
|
47
|
+
it 'returns correct kind for networkinterface' do
|
48
|
+
expect(model.get_by_id('http://schemas.ogf.org/occi/infrastructure#networkinterface')).to be_kind_of Occi::Core::Kind
|
49
|
+
end
|
50
|
+
|
51
|
+
it 'returns correct kind for ipnetworkinterface' do
|
52
|
+
expect(model.get_by_id('http://schemas.ogf.org/occi/infrastructure/networkinterface#ipnetworkinterface')).to be_kind_of Occi::Core::Mixin
|
53
|
+
end
|
54
|
+
|
55
|
+
it 'returns correct kind for storage' do
|
56
|
+
expect(model.get_by_id('http://schemas.ogf.org/occi/infrastructure#storage')).to be_kind_of Occi::Core::Kind
|
57
|
+
end
|
58
|
+
|
59
|
+
it 'returns correct kind for storagelink' do
|
60
|
+
expect(model.get_by_id('http://schemas.ogf.org/occi/infrastructure#storagelink')).to be_kind_of Occi::Core::Kind
|
61
|
+
end
|
62
|
+
|
63
|
+
end
|
9
64
|
end
|
10
65
|
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
66
|
+
context '#get' do
|
67
|
+
it "returns all registered categories" do
|
68
|
+
model = Occi::Model.new
|
69
|
+
collection = model.get
|
70
|
+
expected=Marshal.restore("\x04\bo:\x10Occi::Model\n:\v@kindso:\x16Occi::Core::Kinds\x06:\n@hash{\bo:\x15Occi::Core::Kind\x0E:\f@schemeI\"&http://schemas.ogf.org/occi/core#\x06:\x06EF:\n@termI\"\ventity\x06;\vF:\v@titleI\"\ventity\x06;\vF:\x10@attributesC:\eOcci::Core::Attributes{\x06I\"\tocci\x06;\vFC;\x0F{\x06I\"\tcore\x06;\vFC;\x0F{\tI\"\aid\x06;\vFo:\eOcci::Core::Properties\v:\r@default0:\n@typeI\"\vstring\x06;\vF:\x0E@requiredF:\r@mutableF:\r@patternI\"A[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}\x06;\vF:\x11@description0I\"\b_id\x06;\vFo;\x10\v;\x110;\x12@\x13;\x13F;\x14F;\x15@\x14;\x160I\"\ntitle\x06;\vFo;\x10\v;\x110;\x12I\"\vstring\x06;\vF;\x13F;\x14T;\x15I\"\a.*\x06;\vF;\x160I\"\v_title\x06;\vFo;\x10\v;\x110;\x12@\x19;\x13F;\x14T;\x15@\x1A;\x160:\f@parent0:\r@actionso:\x18Occi::Core::Actions\x06;\b{\x00:\x0E@entitieso:\x19Occi::Core::Entities\x06;\b{\x00:\x0E@locationI\"\r/entity/\x06;\vF:\v@model@\x00To;\t\x0E;\nI\"&http://schemas.ogf.org/occi/core#\x06;\vF;\fI\"\rresource\x06;\vF;\rI\"\rresource\x06;\vF;\x0EC;\x0F{\x06@\rC;\x0F{\x06@\x0FC;\x0F{\v@\x11@\x12@\x15@\x16@\x17@\x18@\e@\x1CI\"\fsummary\x06;\vFo;\x10\v;\x110;\x12I\"\vstring\x06;\vF;\x13F;\x14T;\x15I\"\a.*\x06;\vF;\x160I\"\r_summary\x06;\vFo;\x10\v;\x110;\x12@+;\x13F;\x14T;\x15@,;\x160;\x17@\b;\x18o;\x19\x06;\b{\x00;\x1Ao;\e\x06;\b{\x06o:\x19Occi::Core::Resource\r:\n@kind@\":\f@mixinso:\x17Occi::Core::Mixins\b;\b{\x00;\x1Do;\x00\n;\x06o;\a\x06;\b{\b@\bT@\"To;\t\x0E;\nI\"&http://schemas.ogf.org/occi/core#\x06;\vF;\fI\"\tlink\x06;\vF;\rI\"\tlink\x06;\vF;\x0EC;\x0F{\x06@\rC;\x0F{\x06@\x0FC;\x0F{\r@\x11@\x12@\x15@\x16@\x17@\x18@\e@\x1CI\"\vtarget\x06;\vFo;\x10\v;\x110;\x12I\"\vstring\x06;\vF;\x13F;\x14T;\x15I\"\a.*\x06;\vF;\x160I\"\f_target\x06;\vFo;\x10\v;\x110;\x12@B;\x13F;\x14T;\x15@C;\x160I\"\vsource\x06;\vFo;\x10\v;\x110;\x12I\"\vstring\x06;\vF;\x13F;\x14T;\x15I\"\a.*\x06;\vF;\x160I\"\f_source\x06;\vFo;\x10\v;\x110;\x12@H;\x13F;\x14T;\x15@I;\x160;\x17@\b;\x18o;\x19\x06;\b{\x00;\x1Ao;\e\x06;\b{\x06o:\x15Occi::Core::Link\x0F;\x1F@9; o;!\b;\b{\x00;\x1D@6:\f@entity@P;\x0EIC;\x0F{\x06@\rIC;\x0F{\x06@\x0FIC;\x0F{\r@\x11I\")45284ebc-3397-468b-9d3b-863a24075ea2\x06;\vT@\x15@\x16@\x170@\e@\x1C@@0@D@E@F0@J@K\x06:\x0F@convertedT\x06;$T\x06;$T;\x18o;\x19\a;\b{\x00;\x1D@6;\x1C0:\t@rel@9:\f@target0;\x1D@6:\b@id@V:\f@source0T;\x1CI\"\v/link/\x06;\vF;\x1D@\x00T; o;!\x06;\b{\x00;\x18o;\x19\x06;\b{\x00:\x0F@resourceso:\x1AOcci::Core::Resources\x06;\b{\x00:\v@linkso:\x16Occi::Core::Links\x06;\b{\x00;\#@3;\x0EIC;\x0F{\x06@\rIC;\x0F{\x06@\x0FIC;\x0F{\v@\x11I\")aa7baa55-23dc-42fe-aa2d-45fba74d1a4e\x06;\vT@\x15@\x16@\x170@\e@\x1C@)0@-@.\x06;$T\x06;$T\x06;$T;\x18o;\x19\a;\b{\x00;\x1D@6;\x1C0;+o;,\a;\b{\x00;\x1D@6;\x1D@6;'@eT;\x1CI\"\x0F/resource/\x06;\vF;\x1D@\x00T@9T; o;!\x06;\b{\x00;\x18o;\x19\x06;\b{\x00;)o;*\x06;\b{\x00;+o;,\x06;\b{\x00")
|
71
|
+
expect(collection).to eql expected
|
72
|
+
end
|
73
|
+
|
74
|
+
context "for categories with filter" do
|
75
|
+
model = Occi::Model.new
|
76
|
+
model.register_infrastructure
|
77
|
+
network = Occi::Infrastructure::Network.kind
|
78
|
+
collection = model.get(network)
|
79
|
+
|
80
|
+
it 'returns the right kind' do
|
81
|
+
expect(collection).to be_kind_of Occi::Collection
|
82
|
+
end
|
83
|
+
|
84
|
+
it 'returns the right number of kinds' do
|
85
|
+
expect(collection.kinds.count).to eql 1
|
86
|
+
end
|
87
|
+
|
88
|
+
it 'starts with a network kind' do
|
89
|
+
expect(collection.kinds.first).to eql network
|
90
|
+
end
|
91
|
+
|
92
|
+
it 'has empty mixins' do
|
93
|
+
expect(collection.mixins).to be_empty
|
94
|
+
end
|
95
|
+
|
96
|
+
it 'has empty actions' do
|
97
|
+
expect(collection.actions).to be_empty
|
98
|
+
end
|
99
|
+
|
100
|
+
it 'has empty resources' do
|
101
|
+
expect(collection.resources).to be_empty
|
102
|
+
end
|
103
|
+
|
104
|
+
it 'has empty links' do
|
105
|
+
expect(collection.links).to be_empty
|
106
|
+
end
|
107
|
+
end
|
23
108
|
end
|
24
109
|
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
110
|
+
context '#register' do
|
111
|
+
let(:kind){ Occi::Core::Kind.new }
|
112
|
+
let(:mixin){ Occi::Core::Mixin.new }
|
113
|
+
let(:action){ Occi::Core::Action.new }
|
114
|
+
let(:model){ model = Occi::Model.new
|
115
|
+
model.register(kind)
|
116
|
+
model.register(mixin)
|
117
|
+
model.register(action)
|
118
|
+
model
|
119
|
+
}
|
120
|
+
|
121
|
+
it 'registers a kind' do
|
122
|
+
expect(model.kinds.include?(kind)).to eql true
|
123
|
+
end
|
124
|
+
|
125
|
+
it 'registers a mixin' do
|
126
|
+
expect(model.mixins.include?(mixin)).to eql true
|
127
|
+
end
|
128
|
+
|
129
|
+
it 'registers an action' do
|
130
|
+
expect(model.actions.include?(action)).to eql true
|
131
|
+
end
|
132
|
+
end
|
133
|
+
|
134
|
+
context '#unregister' do
|
135
|
+
let(:kind){ Occi::Core::Kind.new }
|
136
|
+
let(:mixin){ Occi::Core::Mixin.new }
|
137
|
+
let(:action){ Occi::Core::Action.new }
|
138
|
+
let(:model){ model = Occi::Model.new
|
139
|
+
model.register(kind)
|
140
|
+
model.register(mixin)
|
141
|
+
model.register(action)
|
142
|
+
model
|
143
|
+
}
|
144
|
+
|
145
|
+
it 'unregisters a kind' do
|
146
|
+
model.unregister(kind)
|
147
|
+
expect(model.kinds.include?(kind)).to eql false
|
148
|
+
end
|
149
|
+
|
150
|
+
it 'unregisters a mixin' do
|
151
|
+
model.unregister(mixin)
|
152
|
+
expect(model.mixins.include?(mixin)).to eql false
|
153
|
+
end
|
154
|
+
|
155
|
+
it 'unregisters an action' do
|
156
|
+
model.unregister(action)
|
157
|
+
expect(model.actions.include?(action)).to eql false
|
158
|
+
end
|
159
|
+
end
|
160
|
+
|
161
|
+
context '#register_collection' do
|
162
|
+
let(:kind){ Occi::Core::Kind.new }
|
163
|
+
let(:mixin){ Occi::Core::Mixin.new }
|
164
|
+
let(:action){ Occi::Core::Action.new }
|
165
|
+
let(:collection) { collection = Occi::Collection.new
|
166
|
+
collection << kind
|
167
|
+
collection << mixin
|
168
|
+
collection << action
|
169
|
+
collection
|
170
|
+
}
|
171
|
+
let(:model){ model = Occi::Model.new
|
172
|
+
model.register_collection(collection)
|
173
|
+
model
|
174
|
+
}
|
175
|
+
|
176
|
+
it 'registers a kind' do
|
177
|
+
expect(model.kinds.include?(kind)).to eql true
|
178
|
+
end
|
179
|
+
|
180
|
+
it 'registers a mixin' do
|
181
|
+
expect(model.mixins.include?(mixin)).to eql true
|
182
|
+
end
|
183
|
+
|
184
|
+
it 'registers an action' do
|
185
|
+
expect(model.actions.include?(action)).to eql true
|
186
|
+
end
|
34
187
|
end
|
35
188
|
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
189
|
+
context '#reset' do
|
190
|
+
let(:entity){ Occi::Core::Entity.new 'http://example.org/test/schema#testentity' }
|
191
|
+
let(:kind){ kind = Occi::Core::Kind.new
|
192
|
+
kind.entities << entity
|
193
|
+
kind }
|
194
|
+
let(:mixin){ mixin = Occi::Core::Mixin.new
|
195
|
+
mixin.entities << entity
|
196
|
+
mixin }
|
197
|
+
let(:action){ Occi::Core::Action.new }
|
198
|
+
let(:model){ model = Occi::Model.new
|
199
|
+
model.register(kind)
|
200
|
+
model.register(mixin)
|
201
|
+
model.register(action)
|
202
|
+
model
|
203
|
+
}
|
204
|
+
|
205
|
+
before(:each){ model.reset }
|
206
|
+
|
207
|
+
it 'unregisters entities from kinds' do
|
208
|
+
found = false
|
209
|
+
model.kinds.each { |kind| found = true if kind.entities.include?(entity) }
|
210
|
+
expect(found).to eql false
|
211
|
+
end
|
212
|
+
|
213
|
+
it 'unregisters entities from mixins' do
|
214
|
+
found = false
|
215
|
+
model.mixins.each { |mixin| found = true if mixin.entities.include?(entity) }
|
216
|
+
expect(found).to eql false
|
217
|
+
end
|
48
218
|
end
|
49
219
|
|
220
|
+
context '#register_files' do
|
221
|
+
context 'for correct and existing files' do
|
222
|
+
let(:model){ model = Occi::Model.new
|
223
|
+
model.register_files('spec/occi/collection_samples')
|
224
|
+
model
|
225
|
+
}
|
226
|
+
|
227
|
+
it 'read the right number of mixins' do
|
228
|
+
expect(model.mixins.count).to eql 2
|
229
|
+
end
|
230
|
+
|
231
|
+
it 'read the right number of actions' do
|
232
|
+
expect(model.actions.count).to eql 2
|
233
|
+
end
|
234
|
+
|
235
|
+
it 'read the right number of resources' do
|
236
|
+
expect(model.resources.count).to eql 2
|
237
|
+
end
|
238
|
+
|
239
|
+
it 'read the right number of links' do
|
240
|
+
expect(model.links.count).to eql 2
|
241
|
+
end
|
242
|
+
|
243
|
+
it 'read the action' do
|
244
|
+
expect(model.action.blank?).to eql false
|
245
|
+
end
|
246
|
+
end
|
247
|
+
|
248
|
+
context 'for inexistent directory' do
|
249
|
+
it 'fails gracefully' do
|
250
|
+
model = Occi::Model.new
|
251
|
+
expect{ model.register_files('this/directory/does/not/exist') }.to raise_exception(ArgumentError)
|
252
|
+
end
|
253
|
+
end
|
254
|
+
|
255
|
+
context 'for invalid input' do
|
256
|
+
it 'fails gracefully' do
|
257
|
+
model = Occi::Model.new
|
258
|
+
expect{ model.register_files('spec/occi') }.to raise_exception(ArgumentError)
|
259
|
+
end
|
260
|
+
end
|
261
|
+
end
|
50
262
|
end
|
51
|
-
end
|
263
|
+
end
|
File without changes
|
Binary file
|
File without changes
|
Binary file
|
File without changes
|
Binary file
|
@@ -0,0 +1,2 @@
|
|
1
|
+
Category: a_a1-_;scheme="http://a.a/a#";class="kind";title="aA1!\"§$%&/()=?`´ß+*#-_.:,;<>";rel="http://a.a/b#a";location="/a1-A/";attributes="a_1-_.a1-_a a-1.a.b";actions="http://a.a/a1#a1 http://a.b1/b1#b2"
|
2
|
+
Category: a_a2-_;scheme="http://a.a/a#";class="kind";title="aA2!\"§$%&/()=?`´ß+*#-_.:,;<>";rel="http://a.a/b#a";location="/a2-A/";attributes="a_2-_.a2-_a a-2.a.b";actions="http://a.a/a2#a2 http://a.b2/b2#b2"
|
Binary file
|
@@ -0,0 +1,10 @@
|
|
1
|
+
Category: compute;scheme="http://schemas.ogf.org/occi/infrastructure#";class="kind"
|
2
|
+
Category: compute;scheme="http://opennebula.org/occi/infrastructure#";class="mixin"
|
3
|
+
X-OCCI-Attribute: occi.core.id="4ddbfeae-22d7-5e50-8f85-ba18589e876b"
|
4
|
+
X-OCCI-Attribute: occi.core.title="MonTest1"
|
5
|
+
X-OCCI-Attribute: occi.compute.cores=1
|
6
|
+
X-OCCI-Attribute: occi.compute.memory=0.256
|
7
|
+
X-OCCI-Attribute: occi.compute.state="active"
|
8
|
+
X-OCCI-Attribute: org.opennebula.compute.cpu=1.0
|
9
|
+
Link: </storage/e60aa2b8-0c86-5973-b93e-30c5c46d6eac>;rel="http://schemas.ogf.org/occi/infrastructure#storage";self="/storagelink/b2f7f1de-c60c-5b08-879c-81f52429c4ef";category="http://schemas.ogf.org/occi/infrastructure#storagelink";occi.core.id="b2f7f1de-c60c-5b08-879c-81f52429c4ef" occi.core.title="monitoring" occi.storagelink.deviceid="xvda" occi.storagelink.state="inactive" org.opennebula.storagelink.bus="ide" org.opennebula.storagelink.driver="tap2:tapdisk:aio:"
|
10
|
+
Link: </network/e4bd81c4-adda-5626-840d-39bb7959db97>;rel="http://schemas.ogf.org/occi/infrastructure#network";self="/networkinterface/e75ab249-9325-511c-82b8-a7e4430381e3";category="http://schemas.ogf.org/occi/infrastructure#networkinterface";occi.core.id="e75ab249-9325-511c-82b8-a7e4430381e3" occi.core.title="monitoring" occi.networkinterface.address="192.168.254.1" occi.networkinterface.mac="02:00:c0:a8:fe:01" occi.networkinterface.state="inactive" org.opennebula.networkinterface.bridge="xenbr0"
|
Binary file
|
@@ -0,0 +1,7 @@
|
|
1
|
+
Category: networkinterface; scheme="http://schemas.ogf.org/occi/infrastructure#"; class="kind";
|
2
|
+
X-OCCI-Attribute: occi.core.id="b2f7f1de-c60c-5b08-879c-81f52429c4ef";
|
3
|
+
X-OCCI-Attribute: occi.networkinterface.interface="eth0";
|
4
|
+
X-OCCI-Attribute: occi.networkinterface.mac="00:11:22:33:44:55";
|
5
|
+
X-OCCI-Attribute: occi.networkinterface.state="active";
|
6
|
+
X-OCCI-Attribute: occi.core.source="/vms/foo/vm1"
|
7
|
+
X-OCCI-Attribute: occi.core.target="/network/123"
|
Binary file
|
Binary file
|
@@ -0,0 +1 @@
|
|
1
|
+
Link: </storage/e60aa2b8-0c86-5973-b93e-30c5c46d6eac>;rel="http://schemas.ogf.org/occi/infrastructure#storage";self="/storagelink/b2f7f1de-c60c-5b08-879c-81f52429c4ef";category="http://schemas.ogf.org/occi/infrastructure#storagelink";occi.core.id="b2f7f1de-c60c-5b08-879c-81f52429c4ef" occi.core.title="monitoring" occi.storagelink.deviceid="xvda" occi.storagelink.state="inactive" org.opennebula.storagelink.bus="ide" org.opennebula.storagelink.driver="tap2:tapdisk:aio:"
|
Binary file
|
@@ -0,0 +1,7 @@
|
|
1
|
+
Link: </storage/e60aa2b8-0c86-5973-b93e-30c5c46d6eac>;rel="http://schemas.ogf.org/occi/infrastructure#storage";self="/storagelink/b2f7f1de-c60c-5b08-879c-81f52429c4ef";category="http://schemas.ogf.org/occi/infrastructure#storagelink";occi.core.id="b2f7f1de-c60c-5b08-879c-81f52429c4ef" occi.core.title="monitoring" occi.storagelink.deviceid="xvda" occi.storagelink.state="inactive" org.opennebula.storagelink.bus="ide" org.opennebula.storagelink.driver="tap2:tapdisk:aio:"
|
2
|
+
X-OCCI-Attribute: occi.storage.state="online"
|
3
|
+
X-OCCI-Attribute: org.opennebula.storage.id="116"
|
4
|
+
X-OCCI-Attribute: org.opennebula.storage.dev_prefix="xvd"
|
5
|
+
X-OCCI-Attribute: org.opennebula.storage.driver="tap2:tapdisk:aio:"
|
6
|
+
X-OCCI-Attribute: org.opennebula.storage.persistent="NO"
|
7
|
+
|
Binary file
|
@@ -0,0 +1,3 @@
|
|
1
|
+
Link: </storage/e60aa2b8-0c86-5973-b93e-30c5c46d6eac>;rel="http://schemas.ogf.org/occi/infrastructure#storage";self="/storagelink/b2f7f1de-c60c-5b08-879c-81f52429c4ef";category="http://schemas.ogf.org/occi/infrastructure#storagelink";occi.core.id="b2f7f1de-c60c-5b08-879c-81f52429c4ef" occi.core.title="monitoring" occi.storagelink.deviceid="xvda" occi.storagelink.state="inactive" org.opennebula.storagelink.bus="ide" org.opennebula.storagelink.driver="tap2:tapdisk:aio:"
|
2
|
+
Category: a_a1-_;scheme="http://a.a/a#";class="kind";title="aA1!\"§$%&/()=?`´ß+*#-_.:,;<>";rel="http://a.a/b#a";location="/a1-A/";attributes="a_1-_.a1-_a a-1.a.b";actions="http://a.a/a1#a1 http://a.b1/b1#b2"
|
3
|
+
|
Binary file
|
@@ -0,0 +1,51 @@
|
|
1
|
+
Category: entity;scheme="http://schemas.ogf.org/occi/core#";class="kind";title="Entity";location="/entity/";attributes="occi.core.id occi.core.title"
|
2
|
+
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"
|
3
|
+
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 occi.core.source"
|
4
|
+
Category: compute;scheme="http://schemas.ogf.org/occi/infrastructure#";class="kind";title="Compute Resource";rel="http://schemas.ogf.org/occi/core#resource";location="/compute/";attributes="occi.compute.architecture occi.compute.cores occi.compute.hostname occi.compute.speed occi.compute.memory occi.compute.state";actions="http://schemas.ogf.org/occi/infrastructure/compute/action#start http://schemas.ogf.org/occi/infrastructure/compute/action#stop http://schemas.ogf.org/occi/infrastructure/compute/action#restart http://schemas.ogf.org/occi/infrastructure/compute/action#suspend"
|
5
|
+
Category: storagelink;scheme="http://schemas.ogf.org/occi/infrastructure#";class="kind";title="Storage Link";rel="http://schemas.ogf.org/occi/core#link";location="/storagelink/";attributes="occi.storagelink.deviceid occi.storagelink.mountpoint occi.storagelink.state"
|
6
|
+
Category: network;scheme="http://schemas.ogf.org/occi/infrastructure#";class="kind";title="Network Resource";rel="http://schemas.ogf.org/occi/core#resource";location="/network/";attributes="occi.network.vlan occi.network.label occi.network.state";actions="http://schemas.ogf.org/occi/infrastructure/network/action#up http://schemas.ogf.org/occi/infrastructure/network/action#down"
|
7
|
+
Category: storage;scheme="http://schemas.ogf.org/occi/infrastructure#";class="kind";title="Storage Resource";rel="http://schemas.ogf.org/occi/core#resource";location="/storage/";attributes="occi.storage.size occi.storage.state";actions="http://schemas.ogf.org/occi/infrastructure/storage/action#online http://schemas.ogf.org/occi/infrastructure/storage/action#offline http://schemas.ogf.org/occi/infrastructure/storage/action#backup http://schemas.ogf.org/occi/infrastructure/storage/action#snapshot http://schemas.ogf.org/occi/infrastructure/storage/action#resize"
|
8
|
+
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 occi.networkinterface.mac occi.networkinterface.state"
|
9
|
+
Category: console;scheme="http://schemas.ogf.org/occi/infrastructure/compute#";class="kind";title="Link to the VM's console";rel="http://schemas.ogf.org/occi/core#link";location="/console/"
|
10
|
+
Category: os_tpl;scheme="http://schemas.ogf.org/occi/infrastructure#";class="mixin";title="Operating System Template";location="/mixins/os_tpl/"
|
11
|
+
Category: ipnetwork;scheme="http://schemas.ogf.org/occi/infrastructure/network#";class="mixin";title="IP Network Mixin";location="/mixins/ipnetwork/";attributes="occi.network.address occi.network.gateway occi.network.allocation occi.network.state"
|
12
|
+
Category: ipnetworkinterface;scheme="http://schemas.ogf.org/occi/infrastructure/networkinterface#";class="mixin";title="IP Networkinterface Mixin";location="/mixins/ipnetworkinterface/";attributes="occi.networkinterface.address occi.networkinterface.gateway occi.networkinterface.allocation occi.networkinterface.state"
|
13
|
+
Category: resource_tpl;scheme="http://schemas.ogf.org/occi/infrastructure#";class="mixin";title="Resource Template";location="/mixins/resource_tpl/"
|
14
|
+
Category: compute;scheme="http://opennebula.org/occi/infrastructure#";class="mixin";title="OpenNebula specific Compute attributes";location="/mixins/compute/";attributes="org.opennebula.compute.cpu org.opennebula.compute.kernel org.opennebula.compute.initrd org.opennebula.compute.root org.opennebula.compute.kernel_cmd org.opennebula.compute.bootloader org.opennebula.compute.boot"
|
15
|
+
Category: storagelink;scheme="http://opennebula.org/occi/infrastructure#";class="mixin";title="OpenNebula specific Storagelink attributes";location="/mixins/storagelink/";attributes="org.opennebula.storagelink.bus org.opennebula.storagelink.driver"
|
16
|
+
Category: network;scheme="http://opennebula.org/occi/infrastructure#";class="mixin";title="OpenNebula specific Network attributes";location="/mixins/network/";attributes="org.opennebula.network.id org.opennebula.network.bridge org.opennebula.network.vlan org.opennebula.network.phydev org.opennebula.network.ip_start org.opennebula.network.ip_end"
|
17
|
+
Category: storage;scheme="http://opennebula.org/occi/infrastructure#";class="mixin";title="OpenNebula specific Storage attributes";location="/mixins/storage/";attributes="org.opennebula.storage"
|
18
|
+
Category: networkinterface;scheme="http://opennebula.org/occi/infrastructure#";class="mixin";title="OpenNebula specific Networkinterface attributes";location="/mixins/networkinterface/";attributes="org.opennebula.networkinterface.bridge org.opennebula.networkinterface.script org.opennebula.networkinterface.model org.opennebula.networkinterface.white_ports_tcp org.opennebula.networkinterface.black_ports_tcp org.opennebula.networkinterface.white_ports_udp org.opennebula.networkinterface.black_ports_udp org.opennebula.networkinterface.icmp"
|
19
|
+
Category: large;scheme="https://occi.localhost/occi/infrastructure/resource_tpl#";class="mixin";title="Large Instance - 2 cores and 7.5 GB of RAM";rel="http://schemas.ogf.org/occi/infrastructure#resource_tpl";location="/mixins/large/";attributes="occi.compute.architecture occi.compute.cores occi.compute.speed occi.compute.memory"
|
20
|
+
Category: extra_large;scheme="https://occi.localhost/occi/infrastructure/resource_tpl#";class="mixin";title="Extra Large Instance - 4 cores and 15 GB of RAM";rel="http://schemas.ogf.org/occi/infrastructure#resource_tpl";location="/mixins/extra_large/";attributes="occi.compute.architecture occi.compute.cores occi.compute.speed occi.compute.memory"
|
21
|
+
Category: larger;scheme="https://occi.localhost/occi/infrastructure/resource_tpl#";class="mixin";title="Larger Instance - 4 cores and 10 GB of RAM";rel="http://schemas.ogf.org/occi/infrastructure#resource_tpl";location="/mixins/larger/";attributes="occi.compute.architecture occi.compute.cores occi.compute.speed occi.compute.memory"
|
22
|
+
Category: medium;scheme="https://occi.localhost/occi/infrastructure/resource_tpl#";class="mixin";title="Medium Instance - 2 cores and 3.75 GB of RAM";rel="http://schemas.ogf.org/occi/infrastructure#resource_tpl";location="/mixins/medium/";attributes="occi.compute.architecture occi.compute.cores occi.compute.speed occi.compute.memory"
|
23
|
+
Category: small;scheme="https://occi.localhost/occi/infrastructure/resource_tpl#";class="mixin";title="Small Instance - 1 core and 1.7 GB of RAM";rel="http://schemas.ogf.org/occi/infrastructure#resource_tpl";location="/mixins/small/";attributes="occi.compute.architecture occi.compute.cores occi.compute.speed occi.compute.memory"
|
24
|
+
Category: monitoring;scheme="https://occi.localhost/occi/infrastructure/os_tpl#";class="mixin";title="monitoring";rel="http://schemas.ogf.org/occi/infrastructure#os_tpl";location="/mixins/monitoring/"
|
25
|
+
Category: debianvm;scheme="https://occi.localhost/occi/infrastructure/os_tpl#";class="mixin";title="debianvm";rel="http://schemas.ogf.org/occi/infrastructure#os_tpl";location="/mixins/debianvm/"
|
26
|
+
Category: egicf2012_demo;scheme="https://occi.localhost/occi/infrastructure/os_tpl#";class="mixin";title="egicf2012-demo";rel="http://schemas.ogf.org/occi/infrastructure#os_tpl";location="/mixins/egicf2012_demo/"
|
27
|
+
Category: oxfordcorpusserver;scheme="https://occi.localhost/occi/infrastructure/os_tpl#";class="mixin";title="OxfordCorpusServer";rel="http://schemas.ogf.org/occi/infrastructure#os_tpl";location="/mixins/oxfordcorpusserver/"
|
28
|
+
Category: omserver;scheme="https://occi.localhost/occi/infrastructure/os_tpl#";class="mixin";title="OMServer";rel="http://schemas.ogf.org/occi/infrastructure#os_tpl";location="/mixins/omserver/"
|
29
|
+
Category: wenmr_demo_cesnet;scheme="https://occi.localhost/occi/infrastructure/os_tpl#";class="mixin";title="WeNMR-Demo-CESNET";rel="http://schemas.ogf.org/occi/infrastructure#os_tpl";location="/mixins/wenmr_demo_cesnet/"
|
30
|
+
Category: egi_sl6goldenimage_cesnet;scheme="https://occi.localhost/occi/infrastructure/os_tpl#";class="mixin";title="EGI-SL6GoldenImage-CESNET";rel="http://schemas.ogf.org/occi/infrastructure#os_tpl";location="/mixins/egi_sl6goldenimage_cesnet/"
|
31
|
+
Category: hadoop;scheme="https://occi.localhost/occi/infrastructure/os_tpl#";class="mixin";title="hadoop";rel="http://schemas.ogf.org/occi/infrastructure#os_tpl";location="/mixins/hadoop/"
|
32
|
+
Category: clever_unime;scheme="https://occi.localhost/occi/infrastructure/os_tpl#";class="mixin";title="clever-unime";rel="http://schemas.ogf.org/occi/infrastructure#os_tpl";location="/mixins/clever_unime/"
|
33
|
+
Category: generic_vm;scheme="https://occi.localhost/occi/infrastructure/os_tpl#";class="mixin";title="generic_vm";rel="http://schemas.ogf.org/occi/infrastructure#os_tpl";location="/mixins/generic_vm/"
|
34
|
+
Category: octave;scheme="https://occi.localhost/occi/infrastructure/os_tpl#";class="mixin";title="octave";rel="http://schemas.ogf.org/occi/infrastructure#os_tpl";location="/mixins/octave/"
|
35
|
+
Category: r;scheme="https://occi.localhost/occi/infrastructure/os_tpl#";class="mixin";title="r";rel="http://schemas.ogf.org/occi/infrastructure#os_tpl";location="/mixins/r/"
|
36
|
+
Category: egi_compss_cesnet;scheme="https://occi.localhost/occi/infrastructure/os_tpl#";class="mixin";title="EGI-COMPSs-CESNET";rel="http://schemas.ogf.org/occi/infrastructure#os_tpl";location="/mixins/egi_compss_cesnet/"
|
37
|
+
Category: esa_sl64_cesnet;scheme="https://occi.localhost/occi/infrastructure/os_tpl#";class="mixin";title="ESA-SL64-CESNET";rel="http://schemas.ogf.org/occi/infrastructure#os_tpl";location="/mixins/esa_sl64_cesnet/"
|
38
|
+
Category: generic_www;scheme="https://occi.localhost/occi/infrastructure/os_tpl#";class="mixin";title="generic_www";rel="http://schemas.ogf.org/occi/infrastructure#os_tpl";location="/mixins/generic_www/"
|
39
|
+
Category: egi_compss;scheme="https://occi.localhost/occi/infrastructure/os_tpl#";class="mixin";title="EGI-COMPSs";rel="http://schemas.ogf.org/occi/infrastructure#os_tpl";location="/mixins/egi_compss/"
|
40
|
+
Category: debianvm_private;scheme="https://occi.localhost/occi/infrastructure/os_tpl#";class="mixin";title="debianvm_private";rel="http://schemas.ogf.org/occi/infrastructure#os_tpl";location="/mixins/debianvm_private/"
|
41
|
+
Category: start;scheme="http://schemas.ogf.org/occi/infrastructure/compute/action#";class="action";title="Start Compute instance"
|
42
|
+
Category: stop;scheme="http://schemas.ogf.org/occi/infrastructure/compute/action#";class="action";title="Stop Compute instance";attributes="method"
|
43
|
+
Category: restart;scheme="http://schemas.ogf.org/occi/infrastructure/compute/action#";class="action";title="Restart Compute instance";attributes="method"
|
44
|
+
Category: suspend;scheme="http://schemas.ogf.org/occi/infrastructure/compute/action#";class="action";title="Suspend Compute instance";attributes="method"
|
45
|
+
Category: up;scheme="http://schemas.ogf.org/occi/infrastructure/network/action#";class="action";title="Activate network"
|
46
|
+
Category: down;scheme="http://schemas.ogf.org/occi/infrastructure/network/action#up";class="action";title="Activate network"
|
47
|
+
Category: online;scheme="http://schemas.ogf.org/occi/infrastructure/storage/action#";class="action";title="Activate Storage"
|
48
|
+
Category: offline;scheme="http://schemas.ogf.org/occi/infrastructure/storage/action#";class="action";title="Deactivate Storage"
|
49
|
+
Category: backup;scheme="http://schemas.ogf.org/occi/infrastructure/storage/action#";class="action";title="Backup Storage"
|
50
|
+
Category: snapshot;scheme="http://schemas.ogf.org/occi/infrastructure/storage/action#";class="action";title="Snapshot Storage"
|
51
|
+
Category: resize;scheme="http://schemas.ogf.org/occi/infrastructure/storage/action#";class="action";title="Resize Storage";attributes="size"
|
Binary file
|
@@ -0,0 +1,11 @@
|
|
1
|
+
Category: network;scheme="http://schemas.ogf.org/occi/infrastructure#";class="kind"
|
2
|
+
Category: network;scheme="http://opennebula.org/occi/infrastructure#";class="mixin"
|
3
|
+
Category: ipnetwork;scheme="http://schemas.ogf.org/occi/infrastructure#";class="mixin"
|
4
|
+
X-OCCI-Attribute: occi.core.id="e4bd81c4-adda-5626-840d-39bb7959db97"
|
5
|
+
X-OCCI-Attribute: occi.core.title="monitoring"
|
6
|
+
X-OCCI-Attribute: occi.network.address="192.168.254.0"
|
7
|
+
X-OCCI-Attribute: occi.network.allocation="dynamic"
|
8
|
+
X-OCCI-Attribute: occi.network.state="active"
|
9
|
+
X-OCCI-Attribute: org.opennebula.network.id="6"
|
10
|
+
X-OCCI-Attribute: org.opennebula.network.bridge="xenbr0"
|
11
|
+
X-OCCI-Attribute: org.opennebula.network.vlan="NO"
|
Binary file
|
@@ -0,0 +1,11 @@
|
|
1
|
+
Category: compute;scheme="http://schemas.ogf.org/occi/infrastructure#";class="kind"\nCategory: compute;scheme="http://opennebula.org/occi/infrastructure#";class="mixin"
|
2
|
+
Category: monitoring;scheme="https://occi.carach5.ics.muni.cz/occi/infrastructure/os_tpl#";class="mixin"
|
3
|
+
Category: small;scheme="https://occi.carach5.ics.muni.cz/occi/infrastructure/resource_tpl#";class="mixin"
|
4
|
+
X-OCCI-Attribute: occi.core.id="ee13808d-7708-4341-a4ba-0e42e4818218"
|
5
|
+
X-OCCI-Attribute: occi.core.title="TestVM"
|
6
|
+
X-OCCI-Attribute: occi.compute.cores=1
|
7
|
+
X-OCCI-Attribute: occi.compute.memory=1.7
|
8
|
+
X-OCCI-Attribute: occi.compute.architecture="x86"
|
9
|
+
X-OCCI-Attribute: occi.compute.speed=1
|
10
|
+
X-OCCI-Attribute: occi.compute.state="active"
|
11
|
+
X-OCCI-Attribute: org.opennebula.compute.cpu=1.0
|
Binary file
|
@@ -0,0 +1,16 @@
|
|
1
|
+
Category: compute; scheme="http://schemas.ogf.org/occi/infrastructure#"; class="kind"; title="Compute Resource"; rel="http://schemas.ogf.org/occi/core#resource"; location="https://egi-cloud.zam.kfa-juelich.de:8787/compute/"; attributes="occi.compute.architecture occi.compute.state{immutable} occi.compute.speed occi.compute.memory occi.compute.cores occi.compute.hostname"; actions="http://schemas.ogf.org/occi/infrastructure/compute/action#start http://schemas.ogf.org/occi/infrastructure/compute/action#stop http://schemas.ogf.org/occi/infrastructure/compute/action#restart http://schemas.ogf.org/occi/infrastructure/compute/action#suspend"
|
2
|
+
Category: os_vms; scheme="http://schemas.openstack.org/compute/instance#"; class="mixin"; location="https://egi-cloud.zam.kfa-juelich.de:8787/os_vms/"; attributes="org.openstack.compute.console.vnc{immutable} org.openstack.compute.state{immutable}"; actions="http://schemas.openstack.org/instance/action#chg_pwd http://schemas.openstack.org/instance/action#create_image"
|
3
|
+
Link: </compute/04106bce-87eb-4f8f-a665-2f624e54ba46?action=stop>; rel="http://schemas.ogf.org/occi/infrastructure/compute/action#stop"
|
4
|
+
Link: </compute/04106bce-87eb-4f8f-a665-2f624e54ba46?action=suspend>; rel="http://schemas.ogf.org/occi/infrastructure/compute/action#suspend"
|
5
|
+
Link: </compute/04106bce-87eb-4f8f-a665-2f624e54ba46?action=restart>; rel="http://schemas.ogf.org/occi/infrastructure/compute/action#restart"
|
6
|
+
Link: </network/public>; rel="http://schemas.ogf.org/occi/infrastructure#network"; self="/network/interface/6a7a9446-a146-4faf-a961-52f66d2808df"; category="http://schemas.ogf.org/occi/infrastructure#networkinterface http://schemas.ogf.org/occi/infrastructure/networkinterface#ipnetworkinterface"; occi.networkinterface.gateway="0.0.0.0"; occi.networkinterface.mac="aa:bb:cc:dd:ee:ff"; occi.networkinterface.interface="eth0"; occi.networkinterface.state="active"; occi.networkinterface.allocation="static"; occi.networkinterface.address="134.94.32.154"; occi.core.source="/compute/04106bce-87eb-4f8f-a665-2f624e54ba46"; occi.core.target="/network/public"; occi.core.id="/network/interface/6a7a9446-a146-4faf-a961-52f66d2808df"
|
7
|
+
Link: </network/admin>; rel="http://schemas.ogf.org/occi/infrastructure#network"; self="/network/interface/02b630f6-087e-4969-b04c-1e22d9480dec"; category="http://schemas.ogf.org/occi/infrastructure#networkinterface http://schemas.ogf.org/occi/infrastructure/networkinterface#ipnetworkinterface"; occi.networkinterface.gateway="192.168.16.1"; occi.networkinterface.mac="fa:16:3e:45:1c:26"; occi.networkinterface.interface="eth0"; occi.networkinterface.state="active"; occi.networkinterface.allocation="static"; occi.networkinterface.address="192.168.16.103"; occi.core.source="/compute/04106bce-87eb-4f8f-a665-2f624e54ba46"; occi.core.target="/network/admin"; occi.core.id="/network/interface/02b630f6-087e-4969-b04c-1e22d9480dec"
|
8
|
+
X-OCCI-Attribute: org.openstack.compute.console.vnc="http://134.94.32.4:6080/vnc_auto.html?token=9923dc1b-eca0-4c62-81a8-a0dd6848341a"
|
9
|
+
X-OCCI-Attribute: occi.compute.architecture="x86"
|
10
|
+
X-OCCI-Attribute: occi.compute.state="active"
|
11
|
+
X-OCCI-Attribute: occi.compute.speed="0.0"
|
12
|
+
X-OCCI-Attribute: occi.compute.cores="1"
|
13
|
+
X-OCCI-Attribute: occi.compute.memory="1.0"
|
14
|
+
X-OCCI-Attribute: org.openstack.compute.state="active"
|
15
|
+
X-OCCI-Attribute: occi.compute.hostname="openmodeller-test-bjoernh"
|
16
|
+
X-OCCI-Attribute: occi.core.id="04106bce-87eb-4f8f-a665-2f624e54ba46"
|
@@ -0,0 +1,13 @@
|
|
1
|
+
Category: compute;scheme="http://schemas.ogf.org/occi/infrastructure#";class="kind"\nCategory: compute;scheme="http://opennebula.org/occi/infrastructure#";class="mixin"
|
2
|
+
Category: monitoring;scheme="https://occi.carach5.ics.muni.cz/occi/infrastructure/os_tpl#";class="mixin"
|
3
|
+
Category: small;scheme="https://occi.carach5.ics.muni.cz/occi/infrastructure/resource_tpl#";class="mixin"
|
4
|
+
X-OCCI-Attribute: occi.core.id="ee13808d-7708-4341-a4ba-0e42e4818218"
|
5
|
+
X-OCCI-Attribute: occi.core.title="TestVM"
|
6
|
+
X-OCCI-Attribute: occi.compute.cores=1
|
7
|
+
X-OCCI-Attribute: occi.compute.memory=1.7
|
8
|
+
X-OCCI-Attribute: occi.compute.architecture="x86"
|
9
|
+
X-OCCI-Attribute: occi.compute.speed=1
|
10
|
+
X-OCCI-Attribute: occi.compute.state="active"
|
11
|
+
X-OCCI-Attribute: org.opennebula.compute.cpu=1.0
|
12
|
+
Link: </storage/e60aa2b8-0c86-5973-b93e-30c5c46d6eac>;rel="http://schemas.ogf.org/occi/infrastructure#storage";self="/storagelink/b2f7f1de-c60c-5b08-879c-81f52429c4ef";category="http://schemas.ogf.org/occi/infrastructure#storagelink";occi.core.id="b2f7f1de-c60c-5b08-879c-81f52429c4ef" occi.core.title="link to storage" occi.storagelink.deviceid="xvda" occi.storagelink.state="inactive" org.opennebula.storagelink.bus="ide" org.opennebula.storagelink.driver="tap2:tapdisk:aio:"
|
13
|
+
Link: </network/e4bd81c4-adda-5626-840d-39bb7959db97>;rel="http://schemas.ogf.org/occi/infrastructure#network";self="/networkinterface/e75ab249-9325-511c-82b8-a7e4430381e3";category="http://schemas.ogf.org/occi/infrastructure#networkinterface";occi.core.id="e75ab249-9325-511c-82b8-a7e4430381e3" occi.core.title="link to network interface" occi.networkinterface.address="192.168.254.8" occi.networkinterface.mac="02:00:c0:a8:fe:08" occi.networkinterface.state="inactive" org.opennebula.networkinterface.bridge="xenbr0"
|
Binary file
|
@@ -0,0 +1,9 @@
|
|
1
|
+
Category: storage;scheme="http://schemas.ogf.org/occi/infrastructure#";class="kind"
|
2
|
+
Category: storage;scheme="http://opennebula.org/occi/infrastructure#";class="mixin"
|
3
|
+
X-OCCI-Attribute: occi.core.id="33601efd-1c81-5547-8e65-6f8ef3dcb8c6"
|
4
|
+
X-OCCI-Attribute: occi.core.title="EGI-COMPSs-CESNET_NFS_3"
|
5
|
+
X-OCCI-Attribute: occi.storage.state="online"
|
6
|
+
X-OCCI-Attribute: org.opennebula.storage.id="116"
|
7
|
+
X-OCCI-Attribute: org.opennebula.storage.dev_prefix="xvd"
|
8
|
+
X-OCCI-Attribute: org.opennebula.storage.driver="tap2:tapdisk:aio:"
|
9
|
+
X-OCCI-Attribute: org.opennebula.storage.persistent="NO"
|