blob: 0492a25949b6363179b60c29b66ccfaf719d186a [file] [log] [blame]
Saryu Shahd1811802017-11-14 00:09:29 +00001
2.. This work is licensed under a Creative Commons Attribution 4.0 International License.
3.. http://creativecommons.org/licenses/by/4.0
4
5**********************************************************
6Control Loop Simulation and Injection of Messages Overview
7**********************************************************
8
9.. contents::
10 :depth: 3
11
12Telemetry
13^^^^^^^^^
14The username and password for the Telemetry commands are in *${POLCIY_HOME}/config/policy-engine.properties*.
15
16Injecting messages:
17-------------------
18
19To inject messages use the following command. The injected message will look as if it came in from the specified topic and will be processed accordingly.
20
21Use the command:
22
23 .. code-block:: bash
24
Saryu Shah2a1b9212018-10-11 21:12:30 +000025 http --verify=no --default-scheme=https -a <userName>:<password> PUT :9696/policy/pdp/engine/topics/sources/ueb/<topic>/events @<onsetFile> Content-Type:"text/plain"
Saryu Shahd1811802017-11-14 00:09:29 +000026
27Alternatively, this command could be used:
28
29 .. code-block:: bash
30
Saryu Shah2a1b9212018-10-11 21:12:30 +000031 curl --insecure --silent --user <userName>:<password> -X PUT --header "Content-Type: text/plain" --data @<onsetFile> https://localhost:9696/policy/pdp/engine/topics/sources/ueb/<topic>/events
Saryu Shahd1811802017-11-14 00:09:29 +000032
Saryu Shah7d861e62018-04-26 18:04:45 +000033The topic being used is *unauthenticated.DCAE_CL_OUTPUT*, which is subject to change. The onset file is a file that contains the data to inject as the onset. The data contained depends on the use case. This is an example for VoLTE:
Saryu Shahd1811802017-11-14 00:09:29 +000034
35 .. code-block:: json
36 :caption: VoLTE_Sample_Onset
37
38 {
39 "closedLoopControlName": "ControlLoop-VOLTE-2179b738-fd36-4843-a71a-a8c24c70c55b",
40 "closedLoopAlarmStart": 1484677482204798,
41 "closedLoopEventClient": "DCAE.HolmesInstance",
42 "closedLoopEventStatus": "ONSET",
43 "requestID": "97964e10-686e-4790-8c45-bdfa61df770f",
44 "target_type": "VM",
45 "target": "vserver.vserver-name",
46 "AAI": {
47 "vserver.is-closed-loop-disabled": "false",
48 "vserver.vserver-name": "dfw1lb01lb01",
49 "service-instance.service-instance-id" : "vserver-name-16102016-aai3255-data-11-1",
50 "generic-vnf.vnf-id" : "vnf-id-16102016-aai3255-data-11-1",
51 "generic-vnf.vnf-name" : "vnf-name-16102016-aai3255-data-11-1"
52 },
53 "from": "DCAE",
54 "version": "1.0.2"
55 }
56
57Getting Information
58-------------------
59
Saryu Shah2a1b9212018-10-11 21:12:30 +000060To get the name of the active controller(s), use:
Saryu Shahd1811802017-11-14 00:09:29 +000061
62 .. code-block:: bash
63
Saryu Shah2a1b9212018-10-11 21:12:30 +000064 curl --insecure --silent --user <username>:<password> -X GET https://localhost:9696/policy/pdp/engine/controllers | python -m json.tool
Saryu Shahd1811802017-11-14 00:09:29 +000065
66To check the facts currently in memory, use the following command. There should be 1 each of org.onap.policy.controlloop.PapParams and org.onap.policy.controlloop.Params per policy pushed.
67
68 .. code-block:: bash
69
Saryu Shah2a1b9212018-10-11 21:12:30 +000070 curl --insecure --silent --user <username>:<password> -X GET https://localhost:9696/policy/pdp/engine/controllers/<controllerName>/drools/facts/<artifactId> | python -m json.tool
Saryu Shahd1811802017-11-14 00:09:29 +000071
72To get additional information about the controller, use:
73
74 .. code-block:: bash
75
Saryu Shah2a1b9212018-10-11 21:12:30 +000076 curl --insecure --silent --user <username>:<password> -X GET https://localhost:9696/policy/pdp/engine/controllers/<controllerName> | python -m json.tool
Saryu Shahd1811802017-11-14 00:09:29 +000077
78
79Simulators
80^^^^^^^^^^
81
82Currently, there are 4 supported simulators: A&AI, SO, vFC, and guard. When they are up, they are accessed via localhost on the following ports: A&AI – 6666, SO – 6667, vFC – 6668, and guard – 6669. They all respond with hard-coded values representing their various success messages except for with certain inputs. For the A&AI simulator, if the value being queried with a “GET” query is “getFail” the simulator returns an exception message, if the value being queried in a “GET” query is “disableClosedLoop” the simulator returns a response with the value of “is-closed-loop-disabled” set to true, and if the value being queried in a named query is “error” the response from the simulator is A&AI’s failure message. The other simulator that can return multiple response is the guard simulator, and that returns a deny response if the closed loop control name passed in is “denyGuard”
83
84Using the Simulators
85--------------------
86
87To check the status of the simulators, run the command: "*features status*". If the feature controlloop-utils is enabled, the simulators are being used, otherwise, they are not.
88
89**Turning on the simulators**
90
91 - First, make sure the controller is off by running the command “*policy stop*”.
92 - Then turn the feature on with the command “*features enable controlloop-utils*”.
93 - Finally restart the controller by running “*policy start*”.
94 - Run “*features status*” again and the *feature controlloop-utils* will be **enabled**.
95
96**Turning the simulators off**
97
98 - First, make sure the controller is off by running the command “*policy stop*”.
99 - Then turn the feature off with the command “*features disable controlloop-utils*”.
100 - Finally restart the controller by running “*policy start*”.
101 - Run “*features status*” again and the *feature controlloop-utils* will be **disabled**.
102
103**For Junits**
104
105 For Junits, the package *org.onap.policy.simulators* is neeeded. In the Util class, there are four methods to start the four different simulators: *buildAaiSim()*, *buildSoSim()*, *buildVfcSim()*, and *buildGuardSim()*. Once the method is called, the simulator should be up and waiting to respond to requests. To bring down the simulators, call *HttpServletServer.factory.destroy()*.
106
107Responses
108---------
109
110**A&AI**
111
112 .. code-block:: bash
113 :caption: vnf-GET-response
114
115 {
116 "vnf-id": vnfId, //vnfId will be the vnfId you query on. If you query on a vnfName, the id will be "error" if the name is "error", "5e49ca06-2972-4532-9ed4-6d071588d792" otherwise
117 "vnf-name": vnfName, //vnfName will be the vnfName you query on. If you query on a vnfId, the name will be "USUCP0PCOIL0110UJRT01"
118 "vnf-type": "RT",
119 "service-id": "d7bb0a21-66f2-4e6d-87d9-9ef3ced63ae4",
120 "equipment-role": "UCPE",
121 "orchestration-status": "created",
122 "management-option": "ATT",
123 "ipv4-oam-address": "32.40.68.35",
124 "ipv4-loopback0-address": "32.40.64.57",
125 "nm-lan-v6-address": "2001:1890:e00e:fffe::1345",
126 "management-v6-address": "2001:1890:e00e:fffd::36",
127 "in-maint": false,
Saryu Shah2a1b9212018-10-11 21:12:30 +0000128 "prov-status":"ACTIVE",
Saryu Shahd1811802017-11-14 00:09:29 +0000129 "is-closed-loop-disabled": isDisabled, //isDisabled will be true if the vnf name/Id you query on is disableClosedLoop, false otherwise
130 "resource-version": "1493389458092",
Saryu Shahd1811802017-11-14 00:09:29 +0000131 "relationship-list": {
132 "relationship": [{
133 "related-to": "service-instance",
134 "related-link": "/aai/v11/business/customers/customer/1610_Func_Global_20160817084727/service-subscriptions/service-subscription/uCPE-VMS/service-instances/service-instance/USUCP0PCOIL0110UJZZ01",
135 "relationship-data": [{
136 "relationship-key": "customer.global-customer-id",
137 "relationship-value": "1610_Func_Global_20160817084727"
138 }, {
139 "relationship-key": "service-subscription.service-type",
140 "relationship-value": "uCPE-VMS"
141 }, {
142 "relationship-key": "service-instance.service-instance-id",
143 "relationship-value": "USUCP0PCOIL0110UJZZ01"
144 }],
145 "related-to-property": [{
146 "property-key": "service-instance.service-instance-name"
147 }]
148 }, {
149 "related-to": "vserver",
150 "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/att-aic/AAIAIC25/tenants/tenant/USUCP0PCOIL0110UJZZ01%3A%3AuCPE-VMS/vservers/vserver/3b2558f4-39d8-40e7-bfc7-30660fb52c45",
151 "relationship-data": [{
152 "relationship-key": "cloud-region.cloud-owner",
153 "relationship-value": "att-aic"
154 }, {
155 "relationship-key": "cloud-region.cloud-region-id",
156 "relationship-value": "AAIAIC25"
157 }, {
158 "relationship-key": "tenant.tenant-id",
159 "relationship-value": "USUCP0PCOIL0110UJZZ01::uCPE-VMS"
160 }, {
161 "relationship-key": "vserver.vserver-id",
162 "relationship-value": "3b2558f4-39d8-40e7-bfc7-30660fb52c45"
163 }],
164 "related-to-property": [{
165 "property-key": "vserver.vserver-name",
166 "property-value": "USUCP0PCOIL0110UJZZ01-vsrx"
167 }]
168 }]
169 }
170
171
172 .. code-block:: bash
173 :caption: vnf-GET-fail
174
175 //This is returned if you query on the value "getFail"
176 {
177 "requestError": {
178 "serviceException": {
179 "messageId": "SVC3001",
180 "text": "Resource not found for %1 using id %2 (msg=%3) (ec=%4)",
181 "variables": ["GET", "network/generic-vnfs/generic-vnf/getFail", "Node Not Found:No Node of type generic-vnf found at network/generic-vnfs/generic-vnf/getFail", "ERR.5.4.6114"]
182 }
183 }
184 }
185
186
187 .. code-block:: bash
188 :caption: vserver-GET-response
189
190 {
191 "vserver": [{
192 "vserver-id": "d0668d4f-c25e-4a1b-87c4-83845c01efd8",
193 "vserver-name": vserverName, // The value you query on
194 "vserver-name2": "vjunos0",
195 "vserver-selflink": "https://aai-ext1.test.att.com:8443/aai/v7/cloud-infrastructure/cloud-regions/cloud-region/att-aic/AAIAIC25/tenants/tenant/USMSO1SX7NJ0103UJZZ01%3A%3AuCPE-VMS/vservers/vserver/d0668d4f-c25e-4a1b-87c4-83845c01efd8",
196 "in-maint": false,
Saryu Shah28d8a3e2018-10-17 00:27:13 +0000197 "prov-status":"ACTIVE",
Saryu Shahd1811802017-11-14 00:09:29 +0000198 "is-closed-loop-disabled": isDisabled, // True if the vserverName is "disableClosedLoop", false otherwise
199 "resource-version": "1494001931513",
200 "relationship-list": {
201 "relationship": [{
202 "related-to": "generic-vnf",
203 "related-link": "/aai/v11/network/generic-vnfs/generic-vnf/e1a41e99-4ede-409a-8f9d-b5e12984203a",
204 "relationship-data": [{
205 "relationship-key": "generic-vnf.vnf-id",
206 "relationship-value": "e1a41e99-4ede-409a-8f9d-b5e12984203a"
207 }],
208 "related-to-property": [{
209 "property-key": "generic-vnf.vnf-name",
210 "property-value": "USMSO1SX7NJ0103UJSW01"
211 }]
212 }, {
213 "related-to": "pserver",
214 "related-link": "/aai/v11/cloud-infrastructure/pservers/pserver/USMSO1SX7NJ0103UJZZ01",
215 "relationship-data": [{
216 "relationship-key": "pserver.hostname",
217 "relationship-value": "USMSO1SX7NJ0103UJZZ01"
218 }],
219 "related-to-property": [{
220 "property-key": "pserver.pserver-name2"
221 }]
222 }]
223 }
224 }]
225 }
Saryu Shah28d8a3e2018-10-17 00:27:13 +0000226
Saryu Shahd1811802017-11-14 00:09:29 +0000227
228 .. code-block:: bash
229 :caption: vserver-GET-error
230
231 //This is returned if you query on the value "getFail"
232 {
233 "requestError": {
234 "serviceException": {
235 "messageId": "SVC3001",
236 "text": "Resource not found for %1 using id %2 (msg=%3) (ec=%4)",
237 "variables": ["GET", "nodes/vservers", "Node Not Found:No Node of type generic-vnf found at nodes/vservers", "ERR.5.4.6114"]
238 }
239 }
240 }
241
242
243 .. code-block:: bash
244 :caption: vnf-NamedQuery-response
245
246 {
Saryu Shah2a1b9212018-10-11 21:12:30 +0000247 "inventory-response-item": [
248 {
Saryu Shahd1811802017-11-14 00:09:29 +0000249 "model-name": "service-instance",
250 "generic-vnf": {
Saryu Shah2a1b9212018-10-11 21:12:30 +0000251 "vnf-id": "vnfId", //vnfId will be the vnfId you query on
252 "vnf-name": "ZRDM2MMEX39",
253 "vnf-type": "vMME Svc Jul 14/vMME VF Jul 14 1",
254 "service-id": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
255 "prov-status": "ACTIVE",
256 "in-maint": false,
257 "is-closed-loop-disabled": false,
258 "resource-version": "1503082370097",
259 "model-invariant-id": "82194af1-3c2c-485a-8f44-420e22a9eaa4",
260 "model-version-id": "46b92144-923a-4d20-b85a-3cbd847668a9"
Saryu Shahd1811802017-11-14 00:09:29 +0000261 },
Saryu Shah2a1b9212018-10-11 21:12:30 +0000262 "extra-properties": {
263 "extra-property": []
264 },
265 "inventory-response-items": {
266 "inventory-response-item": [
267 {
268 "model-name": "service-instance",
269 "service-instance": {
270 "service-instance-id": "37b8cdb7-94eb-468f-a0c2-4e3c3546578e",
271 "service-instance-name": "Changed Service Instance NAME",
272 "resource-version": "1503082993532",
273 "model-invariant-id": "82194af1-3c2c-485a-8f44-420e22a9eaa4",
274 "model-version-id": "46b92144-923a-4d20-b85a-3cbd847668a9"
275 },
276 "extra-properties": {
277 "extra-property": []
278 },
279 "inventory-response-items": {
280 "inventory-response-item": [
281 {
282 "model-name": "pnf",
283 "generic-vnf": {
284 "vnf-id": "pnfVnfId", // pnfVnfId is UUID generated from ${pnfVnfName}
285 "vnf-name": "pnfVnfName", // pnfVnfName is pnf-test-${vnfId}
286 "vnf-type": "vMME Svc Jul 14/vMME VF Jul 14 1",
287 "service-id": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
288 "in-maint": false,
289 "is-closed-loop-disabled": false,
290 "resource-version": "1504013830207",
291 "model-invariant-id": "862b25a1-262a-4961-bdaa-cdc55d69785a",
292 "model-version-id": "e9f1fa7d-c839-418a-9601-03dc0d2ad687"
293 },
294 "extra-properties": {
295 "extra-property": []
296 }
297 },
298 {
299 "model-name": "service-instance",
300 "generic-vnf": {
301 "vnf-id": "serviceInstanceVnfId", // serviceInstanceVnfId is UUID generated from ${serviceInstanceVnfName}
302 "vnf-name": "serviceInstanceVnfName", // serviceInstanceVnfName is service-instance-test-${vnfId}
303 "vnf-type": "vMME Svc Jul 14/vMME VF Jul 14 1",
304 "service-id": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
305 "in-maint": false,
306 "is-closed-loop-disabled": false,
307 "resource-version": "1504014833841",
308 "model-invariant-id": "Eace933104d443b496b8.nodes.heat.vpg",
309 "model-version-id": "46b92144-923a-4d20-b85a-3cbd847668a9"
310 },
311 "extra-properties": {
312 "extra-property": []
313 }
314 }
315 ]
316 }
317 }
318 ]
319 }
Saryu Shahd1811802017-11-14 00:09:29 +0000320 }
Saryu Shah2a1b9212018-10-11 21:12:30 +0000321 ]
Saryu Shahd1811802017-11-14 00:09:29 +0000322 }
323
324
325 .. code-block:: bash
326 :caption: vserver-NamedQuery-response
327
328 {
Saryu Shah2a1b9212018-10-11 21:12:30 +0000329 "inventory-response-item": [
330 {
331 "vserver": {
332 "vserver-id": "6ed3642c-f7a1-4a7c-9290-3d51fe1531eb",
333 "vserver-name": "zdfw1lb01lb02",
334 "vserver-name2": "zdfw1lb01lb02",
335 "prov-status": "ACTIVE",
336 "vserver-selflink": "http://10.12.25.2:8774/v2.1/41d6d38489bd40b09ea8a6b6b852dcbd/servers/6ed3642c-f7a1-4a7c-9290-3d51fe1531eb",
337 "in-maint": false,
338 "is-closed-loop-disabled": false,
339 "resource-version": "1510606403522"
340 },
Saryu Shahd1811802017-11-14 00:09:29 +0000341 "extra-properties": {
Saryu Shah2a1b9212018-10-11 21:12:30 +0000342 "extra-property": []
Saryu Shahd1811802017-11-14 00:09:29 +0000343 },
Saryu Shah2a1b9212018-10-11 21:12:30 +0000344 "inventory-response-items": {
345 "inventory-response-item": [
346 {
347 "model-name": "vLoadBalancer",
348 "generic-vnf": {
349 "vnf-id": "db373a8d-f7be-4d02-8ac8-6ca4c305d144",
350 "vnf-name": "Vfmodule_vLB1113",
351 "vnf-type": "vLoadBalancer-1106/vLoadBalancer 0",
352 "service-id": "66f157fc-4148-4880-95f5-e120677e98d1",
353 "prov-status": "PREPROV",
354 "in-maint": false,
355 "is-closed-loop-disabled": false,
356 "resource-version": "1510604011851",
357 "model-invariant-id": "cee050ed-92a5-494f-ab04-234307a846dc",
358 "model-version-id": "fd65becc-6b2c-4fe8-ace9-cc29db9a3da2"
359 },
360 "extra-properties": {
361 "extra-property": [
362 {
363 "property-name": "model-ver.model-version-id",
364 "property-value": "fd65becc-6b2c-4fe8-ace9-cc29db9a3da2"
365 },
366 {
367 "property-name": "model-ver.model-name",
368 "property-value": "vLoadBalancer"
369 },
370 {
371 "property-name": "model.model-type",
372 "property-value": "resource"
373 },
374 {
375 "property-name": "model.model-invariant-id",
376 "property-value": "cee050ed-92a5-494f-ab04-234307a846dc"
377 },
378 {
379 "property-name": "model-ver.model-version",
380 "property-value": "1.0"
381 }
382 ]
383 },
384 "inventory-response-items": {
385 "inventory-response-item": [
386 {
387 "model-name": "vLoadBalancer-1106",
388 "service-instance": {
389 "service-instance-id": "3b12f31f-8f2d-4f5c-b875-61ff1194b941",
390 "service-instance-name": "vLoadBalancer-1113",
391 "resource-version": "1510603936425",
392 "model-invariant-id": "1321d60d-f7ff-4300-96c2-6bf0b3268b7a",
393 "model-version-id": "732d4692-4b97-46f9-a996-0b3339e88c50"
394 },
395 "extra-properties": {
396 "extra-property": [
397 {
398 "property-name": "model-ver.model-version-id",
399 "property-value": "732d4692-4b97-46f9-a996-0b3339e88c50"
400 },
401 {
402 "property-name": "model-ver.model-name",
403 "property-value": "vLoadBalancer-1106"
404 },
405 {
406 "property-name": "model.model-type",
407 "property-value": "service"
408 },
409 {
410 "property-name": "model.model-invariant-id",
411 "property-value": "1321d60d-f7ff-4300-96c2-6bf0b3268b7a"
412 },
413 {
414 "property-name": "model-ver.model-version",
415 "property-value": "1.0"
416 }
417 ]
418 }
419 },
420 {
421 "model-name": "Vloadbalancer..base_vlb..module-0",
422 "vf-module": {
423 "vf-module-id": "e6b3e3eb-34e1-4c00-b8c1-2a4fbe479b12",
424 "vf-module-name": "Vfmodule_vLB1113-1",
425 "heat-stack-id": "Vfmodule_vLB1113-1/3dd6d900-772f-4fcc-a0cb-e250ab2bb4db",
426 "orchestration-status": "active",
427 "is-base-vf-module": true,
428 "resource-version": "1510604612557",
429 "model-invariant-id": "6d760188-9a24-451a-b05b-e08b86cb94f2",
430 "model-version-id": "93facad9-55f2-4fe0-9574-814c2bc2d071"
431 },
432 "extra-properties": {
433 "extra-property": [
434 {
435 "property-name": "model-ver.model-version-id",
436 "property-value": "93facad9-55f2-4fe0-9574-814c2bc2d071"
437 },
438 {
439 "property-name": "model-ver.model-name",
440 "property-value": "Vloadbalancer..base_vlb..module-0"
441 },
442 {
443 "property-name": "model.model-type",
444 "property-value": "resource"
445 },
446 {
447 "property-name": "model.model-invariant-id",
448 "property-value": "6d760188-9a24-451a-b05b-e08b86cb94f2"
449 },
450 {
451 "property-name": "model-ver.model-version",
452 "property-value": "1"
453 }
454 ]
455 }
456 },
457 {
458 "model-name": "Vloadbalancer..dnsscaling..module-1",
459 "vf-module": {
460 "vf-module-id": "dummy_db373a8d-f7be-4d02-8ac8-6ca4c305d144",
461 "vf-module-name": "dummy_db373a8d-f7be-4d02-8ac8-6ca4c305d144",
462 "is-base-vf-module": false,
463 "resource-version": "1510610079687",
464 "model-invariant-id": "356a1cff-71f2-4086-9980-a2927ce11c1c",
465 "model-version-id": "6b93d804-cfc8-4be3-92cc-9336d135859a"
466 },
467 "extra-properties": {
468 "extra-property": [
469 {
470 "property-name": "model-ver.model-version-id",
471 "property-value": "6b93d804-cfc8-4be3-92cc-9336d135859a"
472 },
473 {
474 "property-name": "model-ver.model-name",
475 "property-value": "Vloadbalancer..dnsscaling..module-1"
476 },
477 {
478 "property-name": "model.model-type",
479 "property-value": "resource"
480 },
481 {
482 "property-name": "model.model-invariant-id",
483 "property-value": "356a1cff-71f2-4086-9980-a2927ce11c1c"
484 },
485 {
486 "property-name": "model-ver.model-version",
487 "property-value": "1"
488 }
489 ]
490 }
491 },
492 {
493 "model-name": "Vloadbalancer..dnsscaling..module-1",
494 "vf-module": {
495 "vf-module-id": "my_module_db373a8d-f7be-4d02-8ac8-6ca4c305d144",
496 "vf-module-name": "my_module_1",
497 "is-base-vf-module": false,
498 "resource-version": "1510610079687",
499 "model-invariant-id": "356a1cff-71f2-4086-9980-a2927ce11c1c",
500 "model-version-id": "6b93d804-cfc8-4be3-92cc-9336d135859a"
501 },
502 "extra-properties": {
503 "extra-property": [
504 {
505 "property-name": "model-ver.model-version-id",
506 "property-value": "6b93d804-cfc8-4be3-92cc-9336d135859a"
507 },
508 {
509 "property-name": "model-ver.model-name",
510 "property-value": "Vloadbalancer..dnsscaling..module-1"
511 },
512 {
513 "property-name": "model.model-type",
514 "property-value": "resource"
515 },
516 {
517 "property-name": "model.model-invariant-id",
518 "property-value": "356a1cff-71f2-4086-9980-a2927ce11c1c"
519 },
520 {
521 "property-name": "model-ver.model-version",
522 "property-value": "1"
523 }
524 ]
525 }
526 },
527 {
528 "model-name": "Vloadbalancer..dnsscaling..module-1",
529 "vf-module": {
530 "vf-module-id": "my_module_db373a8d-f7be-4d02-8ac8-6ca4c305d144",
531 "vf-module-name": "my_module_2",
532 "is-base-vf-module": false,
533 "resource-version": "1510610079687",
534 "model-invariant-id": "356a1cff-71f2-4086-9980-a2927ce11c1c",
535 "model-version-id": "6b93d804-cfc8-4be3-92cc-9336d135859a"
536 },
537 "extra-properties": {
538 "extra-property": [
539 {
540 "property-name": "model-ver.model-version-id",
541 "property-value": "6b93d804-cfc8-4be3-92cc-9336d135859a"
542 },
543 {
544 "property-name": "model-ver.model-name",
545 "property-value": "Vloadbalancer..dnsscaling..module-1"
546 },
547 {
548 "property-name": "model.model-type",
549 "property-value": "resource"
550 },
551 {
552 "property-name": "model.model-invariant-id",
553 "property-value": "356a1cff-71f2-4086-9980-a2927ce11c1c"
554 },
555 {
556 "property-name": "model-ver.model-version",
557 "property-value": "1"
558 }
559 ]
560 }
561 }
562 ]
563 }
564 },
565 {
566 "tenant": {
567 "tenant-id": "41d6d38489bd40b09ea8a6b6b852dcbd",
568 "tenant-name": "Integration-SB-00",
569 "resource-version": "1509587770200"
570 },
571 "extra-properties": {
572 "extra-property": []
573 },
574 "inventory-response-items": {
575 "inventory-response-item": [
576 {
577 "cloud-region": {
578 "cloud-owner": "CloudOwner",
579 "cloud-region-id": "RegionOne",
580 "cloud-region-version": "v1",
581 "resource-version": "1509587770092"
582 },
583 "extra-properties": {
584 "extra-property": []
585 }
586 }
587 ]
588 }
589 }
590 ]
Saryu Shahd1811802017-11-14 00:09:29 +0000591 }
Saryu Shahd1811802017-11-14 00:09:29 +0000592 }
Saryu Shah2a1b9212018-10-11 21:12:30 +0000593 ]
Saryu Shahd1811802017-11-14 00:09:29 +0000594 }
Saryu Shah2a1b9212018-10-11 21:12:30 +0000595
Saryu Shahd1811802017-11-14 00:09:29 +0000596
597 .. code-block:: bash
598 :caption: NamedQuery-error
599
600 // This is returned if you query the value "error"
601 {
602 "requestError": {
603 "serviceException": {
604 "messageId": "SVC3001",
605 "text": "Resource not found for %1 using id %2 (msg=%3) (ec=%4)",
606 "variables": ["POST Search", "getNamedQueryResponse", "Node Not Found:No Node of type generic-vnf found for properties", "ERR.5.4.6114"]
607 }
608 }
609 }
610
611
612**SO**
613
614 .. code-block:: bash
615 :caption: SO-response
616
617 {
618 "requestReferences": {
Saryu Shah2a1b9212018-10-11 21:12:30 +0000619 "requestId":"3e074e0e-5468-48f2-9226-51039d30fe5d" // randomly generated UUID
620 },
621 "request": {
622 "requestId":"a8f58372-aab2-45b8-9d36-c7a42e701c29", // randomly generated UUID
623 "requestStatus": {
624 "percentProgress":0,
625 "requestState":"COMPLETE",
626 "wasRolledBack":false
627 }
628 }
Saryu Shahd1811802017-11-14 00:09:29 +0000629 }
630 }
631
632
Saryu Shah2a1b9212018-10-11 21:12:30 +0000633
Saryu Shahd1811802017-11-14 00:09:29 +0000634**vFC**
635
636 .. code-block:: bash
637 :caption: vFC-POST-response
638
639 {
640 "jobId": "1"
641 }
642
643
644 .. code-block:: bash
645 :caption: vFC-GET-response
646
647 {
648 "jobId": jobId, //The jod id that you query
649 "responseDescriptor": {
650 "progress": "40",
651 "status": "finished",
652 "statusDescription": "OMC VMs are decommissioned in VIM",
653 "errorCode": null,
654 "responseId": 101,
655 "responseHistoryList": [{
656 "progress": "40",
657 "status": "proccessing",
658 "statusDescription": "OMC VMs are decommissioned in VIM",
659 "errorCode": null,
660 "responseId": "1"
661 }, {
662 "progress": "41",
663 "status": "proccessing",
664 "statusDescription": "OMC VMs are decommissioned in VIM",
665 "errorCode": null,
666 "responseId": "2"
667 }]
668 }
669 }
670
671
672**GUARD**
673
674 .. code-block:: bash
675 :caption: permit-response
676
677 {
678 "decision": "PERMIT",
679 "details": "Decision Permit. OK!"
680 }
681
682
683 .. code-block:: bash
Saryu Shah621c25f2017-11-14 16:23:26 +0000684 :caption: deny-response
Saryu Shahd1811802017-11-14 00:09:29 +0000685
Saryu Shah621c25f2017-11-14 16:23:26 +0000686 //This is returned if the closed loop name is denyGuard
Saryu Shahd1811802017-11-14 00:09:29 +0000687 {
688 "decision": "DENY",
689 "details": "Decision Deny. You asked for it"
690 }
691
692
693End of Document
694
Saryu Shah2a1b9212018-10-11 21:12:30 +0000695.. SSNote: Wiki page ref. https://wiki.onap.org/display/DW/Control+Loop+Simulation+and+Injection+of+Messages+Overview
Saryu Shahd1811802017-11-14 00:09:29 +0000696