NNI-based Service creation DG bug fixes (uni, l2vpn, and underlay resources).
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / json / sotn_nni / GENERIC-RESOURCE-API_sotn-vnf-topology-operation-underlay-create.json
1 [\r
2     {\r
3         "id": "c51171cf.967f48",\r
4         "type": "dgstart",\r
5         "name": "DGSTART",\r
6         "outputs": 1,\r
7         "x": 215,\r
8         "y": 61,\r
9         "z": "2acad42e.98ae6c",\r
10         "wires": [\r
11             [\r
12                 "dc4fe414.ffc068"\r
13             ]\r
14         ]\r
15     },\r
16     {\r
17         "id": "dc4fe414.ffc068",\r
18         "type": "service-logic",\r
19         "name": "GENERIC-RESOURCE-API ${project.version}",\r
20         "module": "GENERIC-RESOURCE-API",\r
21         "version": "${project.version}",\r
22         "comments": "",\r
23         "xml": "<service-logic xmlns='http://www.onap.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>",\r
24         "outputs": 1,\r
25         "x": 499.2856903076172,\r
26         "y": 122.23810863494873,\r
27         "z": "2acad42e.98ae6c",\r
28         "wires": [\r
29             [\r
30                 "7bc6b10b.958808"\r
31             ]\r
32         ]\r
33     },\r
34     {\r
35         "id": "7bc6b10b.958808",\r
36         "type": "method",\r
37         "name": "method sotn-vnf-topology-operation-underlay-create",\r
38         "xml": "<method rpc='sotn-vnf-topology-operation-underlay-create' mode='sync'>\n",\r
39         "comments": "",\r
40         "outputs": 1,\r
41         "x": 505.42860412597656,\r
42         "y": 207.00003051757812,\r
43         "z": "2acad42e.98ae6c",\r
44         "wires": [\r
45             [\r
46                 "abdb94c8.92ca2"\r
47             ]\r
48         ]\r
49     },\r
50     {\r
51         "id": "abdb94c8.92ca2",\r
52         "type": "block",\r
53         "name": "block : atomic",\r
54         "xml": "<block atomic=\"true\">",\r
55         "atomic": "true",\r
56         "outputs": 1,\r
57         "x": 875.238037109375,\r
58         "y": 231.66668701171875,\r
59         "z": "2acad42e.98ae6c",\r
60         "wires": [\r
61             [\r
62                 "ebb673b7.95bb08",\r
63                 "b3e2958c.9ee52",\r
64                 "e1a71481.b347c",\r
65                 "824a2826.fb7a5",\r
66                 "23822c5.535c954",\r
67                 "db0823f0.79d838",\r
68                 "9d444bb6.e5cc7",\r
69                 "d8fc2b2b.da9d38",\r
70                 "7de6e31b.ca690c",\r
71                 "37ce30ff.3ae068",\r
72                 "a026f709.be666",\r
73                 "d3e90ee2.8cdb8",\r
74                 "4530b43d.793bcc"\r
75             ]\r
76         ]\r
77     },\r
78     {\r
79         "id": "b3e2958c.9ee52",\r
80         "type": "set",\r
81         "name": "set vnf-level-oper-status to Created",\r
82         "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.order-status' value='Created' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.last-rpc-action' value='`$vnf-topology-operation-input.sdnc-request-header.svc-action`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.last-action' value='`$vnf-topology-operation-input.request-information.request-action`' />\n",\r
83         "comments": "",\r
84         "x": 1297.3848495483398,\r
85         "y": 595.6706197531894,\r
86         "z": "2acad42e.98ae6c",\r
87         "wires": []\r
88     },\r
89     {\r
90         "id": "ebb673b7.95bb08",\r
91         "type": "set",\r
92         "name": "copy input data to service data",\r
93         "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-id' value='`$prop.vnf-id`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.sdnc-request-header.' value='$vnf-topology-operation-input.sdnc-request-header.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.request-information.' value='$vnf-topology-operation-input.request-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.' value='$vnf-topology-operation-input.service-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-information.' value='$vnf-topology-operation-input.vnf-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-request-input.' value='$vnf-topology-operation-input.vnf-request-input.' />\n\n",\r
94         "comments": "",\r
95         "x": 1289.238037109375,\r
96         "y": 490.6668718131259,\r
97         "z": "2acad42e.98ae6c",\r
98         "wires": []\r
99     },\r
100     {\r
101         "id": "23822c5.535c954",\r
102         "type": "execute",\r
103         "name": "execute generate-vnf-index",\r
104         "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"prop.vnf-id\"/>\n",\r
105         "comments": "",\r
106         "outputs": 1,\r
107         "x": 1277.5715408325195,\r
108         "y": 440.3334558280185,\r
109         "z": "2acad42e.98ae6c",\r
110         "wires": [\r
111             []\r
112         ]\r
113     },\r
114     {\r
115         "id": "37ce30ff.3ae068",\r
116         "type": "set",\r
117         "name": "set vnf-index to service data",\r
118         "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-information.vnf-id' value='`$prop.vnf-id`' />\n",\r
119         "comments": "",\r
120         "x": 1288.5716171264648,\r
121         "y": 547.3334596427158,\r
122         "z": "2acad42e.98ae6c",\r
123         "wires": []\r
124     },\r
125     {\r
126         "id": "e1a71481.b347c",\r
127         "type": "switchNode",\r
128         "name": "switch service-data.vnfs.vnf_length",\r
129         "xml": "<switch test='`$service-data.vnfs.vnf_length`'>\n",\r
130         "comments": "",\r
131         "outputs": 1,\r
132         "x": 1304.5713577270508,\r
133         "y": 110.33337858039886,\r
134         "z": "2acad42e.98ae6c",\r
135         "wires": [\r
136             [\r
137                 "2aa8bb99.a4b4cc",\r
138                 "2ff8b11d.a3a30e"\r
139             ]\r
140         ]\r
141     },\r
142     {\r
143         "id": "2aa8bb99.a4b4cc",\r
144         "type": "other",\r
145         "name": "NULL",\r
146         "xml": "<outcome value=''>\n",\r
147         "comments": "",\r
148         "outputs": 1,\r
149         "x": 1539.285743713379,\r
150         "y": 105.47619893867522,\r
151         "z": "2acad42e.98ae6c",\r
152         "wires": [\r
153             [\r
154                 "9f14dc9.0335b2"\r
155             ]\r
156         ]\r
157     },\r
158     {\r
159         "id": "9f14dc9.0335b2",\r
160         "type": "set",\r
161         "name": "set vnf-index=0",\r
162         "xml": "<set>\n<parameter name='vnf-index' value='0' />\n",\r
163         "comments": "",\r
164         "x": 1699.5714492797852,\r
165         "y": 105.4762904914096,\r
166         "z": "2acad42e.98ae6c",\r
167         "wires": []\r
168     },\r
169     {\r
170         "id": "2ff8b11d.a3a30e",\r
171         "type": "other",\r
172         "name": "other",\r
173         "xml": "<outcome value='Other'>\n",\r
174         "comments": "",\r
175         "outputs": 1,\r
176         "x": 1535.714282989502,\r
177         "y": 138.76203039009124,\r
178         "z": "2acad42e.98ae6c",\r
179         "wires": [\r
180             [\r
181                 "c07d0fb1.6b3d1"\r
182             ]\r
183         ]\r
184     },\r
185     {\r
186         "id": "1270cfd.bc37b3",\r
187         "type": "set",\r
188         "name": "set vnf-index = vnf_length",\r
189         "xml": "<set>\n<parameter name='vnf-index' value='`$service-data.vnfs.vnf_length`' />\n",\r
190         "comments": "",\r
191         "x": 1928.5715255737305,\r
192         "y": 117.04775598365813,\r
193         "z": "2acad42e.98ae6c",\r
194         "wires": []\r
195     },\r
196     {\r
197         "id": "41d9a632.4f7ff",\r
198         "type": "for",\r
199         "name": "for each existing VNF",\r
200         "xml": "<for index='idx' start='0' end='`$service-data.vnfs.vnf_length`' >\n",\r
201         "comments": "",\r
202         "outputs": 1,\r
203         "x": 1917.000144958496,\r
204         "y": 152.0477278502658,\r
205         "z": "2acad42e.98ae6c",\r
206         "wires": [\r
207             [\r
208                 "648fa43a.d20ca4"\r
209             ]\r
210         ]\r
211     },\r
212     {\r
213         "id": "c07d0fb1.6b3d1",\r
214         "type": "block",\r
215         "name": "block",\r
216         "xml": "<block>\n",\r
217         "atomic": "false",\r
218         "comments": "",\r
219         "outputs": 1,\r
220         "x": 1670.428565979004,\r
221         "y": 140.76199987251312,\r
222         "z": "2acad42e.98ae6c",\r
223         "wires": [\r
224             [\r
225                 "1270cfd.bc37b3",\r
226                 "41d9a632.4f7ff"\r
227             ]\r
228         ]\r
229     },\r
230     {\r
231         "id": "648fa43a.d20ca4",\r
232         "type": "switchNode",\r
233         "name": "switch vnf-information.vnf-id == service-data.vnfs.vnf[].vnf-id",\r
234         "xml": "<switch test='`$vnf-topology-operation-input.vnf-information.vnf-id == $service-data.vnfs.vnf[$idx].vnf-id`'>\n",\r
235         "comments": "",\r
236         "outputs": 1,\r
237         "x": 2310.2858810424805,\r
238         "y": 152.6192119391635,\r
239         "z": "2acad42e.98ae6c",\r
240         "wires": [\r
241             [\r
242                 "fcc42c1e.bc5548"\r
243             ]\r
244         ]\r
245     },\r
246     {\r
247         "id": "fcc42c1e.bc5548",\r
248         "type": "outcomeTrue",\r
249         "name": "true",\r
250         "xml": "<outcome value='true'>\n",\r
251         "comments": "",\r
252         "outputs": 1,\r
253         "x": 2591.5715827941895,\r
254         "y": 151.1906173499301,\r
255         "z": "2acad42e.98ae6c",\r
256         "wires": [\r
257             [\r
258                 "51470afc.fd843c"\r
259             ]\r
260         ]\r
261     },\r
262     {\r
263         "id": "75fcb25e.311ddc",\r
264         "type": "comment",\r
265         "name": "make sure this vnf-id doesn't exist already",\r
266         "info": "",\r
267         "comments": "",\r
268         "x": 2279.428497314453,\r
269         "y": 116.19060399848968,\r
270         "z": "2acad42e.98ae6c",\r
271         "wires": []\r
272     },\r
273     {\r
274         "id": "824a2826.fb7a5",\r
275         "type": "set",\r
276         "name": "set new vnf_length",\r
277         "xml": "<set>\n<parameter name='service-data.vnfs.vnf_length' value='`$vnf-index + 1`' />\n",\r
278         "comments": "",\r
279         "x": 1235.571533203125,\r
280         "y": 388.33343505859375,\r
281         "z": "2acad42e.98ae6c",\r
282         "wires": []\r
283     },\r
284     {\r
285         "id": "db0823f0.79d838",\r
286         "type": "returnSuccess",\r
287         "name": "return success",\r
288         "xml": "<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n",\r
289         "comments": "",\r
290         "x": 1236.5715026855469,\r
291         "y": 858.5969713004306,\r
292         "z": "2acad42e.98ae6c",\r
293         "wires": []\r
294     },\r
295     {\r
296         "id": "7de6e31b.ca690c",\r
297         "type": "save",\r
298         "name": "save service relationship in AAI",\r
299         "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' \n      key='service-instance.service-instance-id = $service-data.service-information.service-instance-id\n         AND customer.global-customer-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.global-customer-id \n         AND service-subscription.service-type = $service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.subscription-service-type' \n      force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"generic-vnf\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/generic-vnfs/generic-vnf/' + $prop.vnf-id`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"generic-vnf.vnf-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$prop.vnf-id`\" />\n\n\n<!--key='service-instance.service-instance-id = $service-data.service-information.service-instance-id -->\n<!--key='service-instance.service-instance-id = $service-data.service-instance-id -->\n",\r
300         "comments": "",\r
301         "outputs": 1,\r
302         "x": 1269.2382736206055,\r
303         "y": 807.5968644889072,\r
304         "z": "2acad42e.98ae6c",\r
305         "wires": [\r
306             []\r
307         ]\r
308     },\r
309     {\r
310         "id": "9d444bb6.e5cc7",\r
311         "type": "set",\r
312         "name": "set vnf-index and vnf-object-path",\r
313         "xml": "<set>\n<parameter name='vnfId' value='`$prop.vnf-id`' />\n<parameter name=\"vnf-object-path\" value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/'  + $vnf-topology-operation-input.service-information.service-instance-id  + '/service-data/vnfs/vnf/'  + $prop.vnf-id  + '/vnf-data/'` \" />",\r
314         "comments": "",\r
315         "x": 1290.571533203125,\r
316         "y": 636.5968902381137,\r
317         "z": "2acad42e.98ae6c",\r
318         "wires": []\r
319     },\r
320     {\r
321         "id": "51470afc.fd843c",\r
322         "type": "returnFailure",\r
323         "name": "return failure",\r
324         "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n    <parameter name=\"error-message\" value=\"`'VNF id ' + $service-data.vnfs.vnf[$idx].vnf-id\n      + ' already exists, and has order status ' + $service-data.vnfs.vnf[$idx].vnf-data.vnf-level-oper-status.order-status`\" />\n",\r
325         "comments": "",\r
326         "x": 2720.142951965332,\r
327         "y": 202.19063165504485,\r
328         "z": "2acad42e.98ae6c",\r
329         "wires": []\r
330     },\r
331     {\r
332         "id": "d8fc2b2b.da9d38",\r
333         "type": "save",\r
334         "name": "save AnAI - vnf-instance.orchestration-status",\r
335         "xml": "<save plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"generic-vnf\"   \n\t\tkey='generic-vnf.vnf-id = $prop.vnf-id' >\n<parameter name=\"orchestration-status\" value=\"Created\" />\n<parameter name=\"in-maint\" value = \"true\" />\n<parameter name=\"vnf-type\" value='`$prop.vnfName`' />\n<parameter name=\"vnf-name\" value = \"`$prop.vnfName`\"/>\n<parameter name=\"model-invariant-id\" value = \"`$vnf-topology-operation-input.vnf-information.onap-model-information.model-invariant-uuid`\"/>\n<parameter name=\"model-version-id\" value = \"`$vnf-topology-operation-input.vnf-information.onap-model-information.model-uuid`\"/>\n<parameter name=\"model-customization-id\" value = \"`$vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`\"/>",\r
336         "comments": "",\r
337         "outputs": 1,\r
338         "x": 1345.5458374023438,\r
339         "y": 746.2471072943881,\r
340         "z": "2acad42e.98ae6c",\r
341         "wires": [\r
342             []\r
343         ]\r
344     },\r
345     {\r
346         "id": "766790a.b9c79f",\r
347         "type": "comment",\r
348         "name": "TODO: change AAI models",\r
349         "info": "",\r
350         "comments": "",\r
351         "x": 1279.1820983886719,\r
352         "y": 705.9743230612949,\r
353         "z": "2acad42e.98ae6c",\r
354         "wires": []\r
355     },\r
356     {\r
357         "id": "a966163d.bdafe8",\r
358         "type": "execute",\r
359         "name": "execute split parameterName",\r
360         "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\n<parameter name=\"original_string\" value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name`'/>\n<parameter name=\"regex\" value=\"_\"/>\n<parameter name=\"ctx_memory_result_key\" value=\"param-prefix\"/>\n",\r
361         "comments": "",\r
362         "outputs": 1,\r
363         "x": 1705.7395858764648,\r
364         "y": 199.75002291519195,\r
365         "z": "2acad42e.98ae6c",\r
366         "wires": [\r
367             []\r
368         ]\r
369     },\r
370     {\r
371         "id": "1dc30465.a19184",\r
372         "type": "block",\r
373         "name": "block",\r
374         "xml": "<block>\n",\r
375         "atomic": "false",\r
376         "comments": "",\r
377         "outputs": 1,\r
378         "x": 1509.483383178711,\r
379         "y": 204.00189593154937,\r
380         "z": "2acad42e.98ae6c",\r
381         "wires": [\r
382             [\r
383                 "a966163d.bdafe8",\r
384                 "a75d0084.0dea2"\r
385             ]\r
386         ]\r
387     },\r
388     {\r
389         "id": "a026f709.be666",\r
390         "type": "for",\r
391         "name": "for loop idx - VNF input parameters",\r
392         "xml": "<for index=\"idx\" start=\"0\" end=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param_length`\">\n",\r
393         "comments": "",\r
394         "outputs": 1,\r
395         "x": 1294.7050399780273,\r
396         "y": 206.44631197769195,\r
397         "z": "2acad42e.98ae6c",\r
398         "wires": [\r
399             [\r
400                 "1dc30465.a19184"\r
401             ]\r
402         ]\r
403     },\r
404     {\r
405         "id": "d3e90ee2.8cdb8",\r
406         "type": "set",\r
407         "name": "set vnf-request-input.",\r
408         "xml": "<set>\n<parameter name='vnf-request-input.' value='`$vnf-topology-operation-input.vnf-request-input.`' />\n",\r
409         "comments": "",\r
410         "x": 1251.7046737670898,\r
411         "y": 276.77101900894195,\r
412         "z": "2acad42e.98ae6c",\r
413         "wires": []\r
414     },\r
415     {\r
416         "id": "a75d0084.0dea2",\r
417         "type": "set",\r
418         "name": "set parameterName",\r
419         "xml": "<set>\n<parameter name=\"`vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name`\" value='`$param-prefix[$param-prefix_length -1]`'/>\n",\r
420         "comments": "",\r
421         "x": 1682.7395858764648,\r
422         "y": 245.75002291519195,\r
423         "z": "2acad42e.98ae6c",\r
424         "wires": []\r
425     },\r
426     {\r
427         "id": "4530b43d.793bcc",\r
428         "type": "for",\r
429         "name": "for each sdwan-get-request-input-param",\r
430         "xml": "<for index=\"idx\" start=\"0\" end=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param_length`\">\n",\r
431         "comments": "",\r
432         "outputs": 1,\r
433         "x": 1307.7395858764648,\r
434         "y": 328.75002291519195,\r
435         "z": "2acad42e.98ae6c",\r
436         "wires": [\r
437             [\r
438                 "dc4ef169.09fde8"\r
439             ]\r
440         ]\r
441     },\r
442     {\r
443         "id": "dc4ef169.09fde8",\r
444         "type": "block",\r
445         "name": "block",\r
446         "xml": "<block>\n",\r
447         "atomic": "false",\r
448         "comments": "",\r
449         "outputs": 1,\r
450         "x": 1533.9722518920898,\r
451         "y": 327.09377291519195,\r
452         "z": "2acad42e.98ae6c",\r
453         "wires": [\r
454             [\r
455                 "b619e27a.688618"\r
456             ]\r
457         ]\r
458     },\r
459     {\r
460         "id": "b619e27a.688618",\r
461         "type": "switchNode",\r
462         "name": "switch vnf name",\r
463         "xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'name'`\">\n",\r
464         "comments": "",\r
465         "outputs": 1,\r
466         "x": 1690.4722518920898,\r
467         "y": 325.0938339503482,\r
468         "z": "2acad42e.98ae6c",\r
469         "wires": [\r
470             [\r
471                 "91d21a65.20ca"\r
472             ]\r
473         ]\r
474     },\r
475     {\r
476         "id": "91d21a65.20ca",\r
477         "type": "outcomeTrue",\r
478         "name": "true",\r
479         "xml": "<outcome value='true'>\n",\r
480         "comments": "",\r
481         "outputs": 1,\r
482         "x": 1851.4726181030273,\r
483         "y": 325.09389498550445,\r
484         "z": "2acad42e.98ae6c",\r
485         "wires": [\r
486             [\r
487                 "9c25080f.021b"\r
488             ]\r
489         ]\r
490     },\r
491     {\r
492         "id": "9c25080f.021b",\r
493         "type": "set",\r
494         "name": "set vnf name",\r
495         "xml": "<set>\n<parameter name='prop.vnfName' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' />\n",\r
496         "comments": "",\r
497         "x": 2009.4727401733398,\r
498         "y": 323.6939316065982,\r
499         "z": "2acad42e.98ae6c",\r
500         "wires": []\r
501     }\r
502 ]