Clean restconf duplicate models and Implementation.
[ccsdk/cds.git] / components / model-catalog / blueprint-model / test-blueprint / baseconfiguration / Definitions / node_types.json
1 {
2   "node_types": {
3     "component-script-executor": {
4       "description": "This is CLI Transaction Configuration Component API",
5       "version": "1.0.0",
6       "capabilities": {
7         "component-node": {
8           "type": "tosca.capabilities.Node"
9         }
10       },
11       "interfaces": {
12         "ComponentScriptExecutor": {
13           "operations": {
14             "process": {
15               "inputs": {
16                 "script-type": {
17                   "description": "Script type, kotlin type is supported",
18                   "required": true,
19                   "type": "string",
20                   "constraints": [
21                     {
22                       "valid_values": [
23                         "kotlin",
24                         "jython",
25                         "internal"
26                       ]
27                     }
28                   ],
29                   "default": "internal"
30                 },
31                 "script-class-reference": {
32                   "description": "Kotlin Script class name or jython script name.",
33                   "required": true,
34                   "type": "string"
35                 },
36                 "dynamic-properties": {
37                   "description": "Dynamic Json Content or DSL Json reference.",
38                   "required": false,
39                   "type": "json"
40                 }
41               },
42               "outputs": {
43                 "response-data": {
44                   "description": "Execution Response Data.",
45                   "required": false,
46                   "type": "string"
47                 },
48                 "status": {
49                   "description": "Status of the Component Execution ( success or failure )",
50                   "required": true,
51                   "type": "string"
52                 }
53               }
54             }
55           }
56         }
57       },
58       "derived_from": "tosca.nodes.Component"
59     },
60     "component-jython-executor": {
61       "description": "This is Jython Execution Component.",
62       "version": "1.0.0",
63       "capabilities": {
64         "component-node": {
65           "type": "tosca.capabilities.Node"
66         }
67       },
68       "interfaces": {
69         "ComponentJythonExecutor": {
70           "operations": {
71             "process": {
72               "inputs": {
73                 "instance-dependencies": {
74                   "description": "Instance Names to Inject to Jython Script.",
75                   "required": true,
76                   "type": "list",
77                   "entry_schema": {
78                     "type": "string"
79                   }
80                 },
81                 "dynamic-properties": {
82                   "description": "Dynamic Json Content or DSL Json reference.",
83                   "required": false,
84                   "type": "json"
85                 }
86               },
87               "outputs": {
88                 "response-data": {
89                   "description": "Execution Response Data in JSON format.",
90                   "required": false,
91                   "type": "string"
92                 },
93                 "status": {
94                   "description": "Status of the Component Execution ( success or failure )",
95                   "required": true,
96                   "type": "string"
97                 }
98               }
99             }
100           }
101         }
102       },
103       "derived_from": "tosca.nodes.Component"
104     },
105     "component-netconf-executor": {
106       "description": "This is Netconf Transaction Configuration Component API",
107       "version": "1.0.0",
108       "capabilities": {
109         "component-node": {
110           "type": "tosca.capabilities.Node"
111         }
112       },
113       "requirements": {
114         "netconf-connection": {
115           "capability": "netconf",
116           "node": "vnf-netconf-device",
117           "relationship": "tosca.relationships.ConnectsTo"
118         }
119       },
120       "interfaces": {
121         "ComponentNetconfExecutor": {
122           "operations": {
123             "process": {
124               "inputs": {
125                 "script-type": {
126                   "description": "Script type, kotlin type is supported",
127                   "required": true,
128                   "type": "string",
129                   "constraints": [
130                     {
131                       "valid_values": [
132                         "kotlin",
133                         "jython",
134                         "internal"
135                       ]
136                     }
137                   ],
138                   "default": "internal"
139                 },
140                 "script-class-reference": {
141                   "description": "Kotlin Script class name or jython script name.",
142                   "required": true,
143                   "type": "string"
144                 },
145                 "instance-dependencies": {
146                   "description": "Instance names to inject to Jython or Kotlin Script.",
147                   "required": true,
148                   "type": "list",
149                   "entry_schema": {
150                     "type": "string"
151                   }
152                 },
153                 "dynamic-properties": {
154                   "description": "Dynamic Json Content or DSL Json reference.",
155                   "required": false,
156                   "type": "json"
157                 }
158               },
159               "outputs": {
160                 "response-data": {
161                   "description": "Execution Response Data in JSON format.",
162                   "required": false,
163                   "type": "string"
164                 },
165                 "status": {
166                   "description": "Status of the Component Execution ( success or failure )",
167                   "required": true,
168                   "type": "string"
169                 }
170               }
171             }
172           }
173         }
174       },
175       "derived_from": "tosca.nodes.Component"
176     },
177     "component-resource-resolution": {
178       "description": "This is Resource Assignment Component API",
179       "version": "1.0.0",
180       "attributes": {
181         "assignment-params": {
182           "required": true,
183           "type": "string"
184         }
185       },
186       "capabilities": {
187         "component-node": {
188           "type": "tosca.capabilities.Node"
189         }
190       },
191       "interfaces": {
192         "ResourceResolutionComponent": {
193           "operations": {
194             "process": {
195               "inputs": {
196                 "resolution-key": {
197                   "description": "Key for service instance related correlation.",
198                   "required": false,
199                   "type": "string"
200                 },
201                 "occurrence": {
202                   "description": "Number of time to perform the resolution.",
203                   "required": false,
204                   "default": 1,
205                   "type": "integer"
206                 },
207                 "store-result": {
208                   "description": "Whether or not to store the output.",
209                   "required": false,
210                   "type": "boolean"
211                 },
212                 "resource-type": {
213                   "description": "Request type.",
214                   "required": false,
215                   "type": "string"
216                 },
217                 "artifact-prefix-names": {
218                   "required": true,
219                   "description": "Template , Resource Assignment Artifact Prefix names",
220                   "type": "list",
221                   "entry_schema": {
222                     "type": "string"
223                   }
224                 },
225                 "request-id": {
226                   "description": "Request Id, Unique Id for the request.",
227                   "required": true,
228                   "type": "string"
229                 },
230                 "resource-id": {
231                   "description": "Resource Id.",
232                   "required": false,
233                   "type": "string"
234                 },
235                 "action-name": {
236                   "description": "Action Name of the process",
237                   "required": false,
238                   "type": "string"
239                 },
240                 "dynamic-properties": {
241                   "description": "Dynamic Json Content or DSL Json reference.",
242                   "required": false,
243                   "type": "json"
244                 }
245               },
246               "outputs": {
247                 "resource-assignment-params": {
248                   "required": true,
249                   "type": "string"
250                 },
251                 "status": {
252                   "required": true,
253                   "type": "string"
254                 }
255               }
256             }
257           }
258         }
259       },
260       "derived_from": "tosca.nodes.Component"
261     },
262     "dg-generic": {
263       "description": "This is Generic Directed Graph Type",
264       "version": "1.0.0",
265       "properties": {
266         "content": {
267           "required": true,
268           "type": "string"
269         },
270         "dependency-node-templates": {
271           "description": "Dependent Step Components NodeTemplate name.",
272           "required": true,
273           "type": "list",
274           "entry_schema": {
275             "type": "string"
276           }
277         }
278       },
279       "derived_from": "tosca.nodes.Workflow"
280     },
281     "source-capability": {
282       "description": "This is Component Resource Source Node Type",
283       "version": "1.0.0",
284       "properties": {
285         "script-type": {
286           "required": true,
287           "type": "string",
288           "constraints": [
289             {
290               "valid_values": [
291                 "kotlin",
292                 "internal",
293                 "jython"
294               ]
295             }
296           ],
297           "default": "kotlin"
298         },
299         "script-class-reference": {
300           "description": "Capability reference name for internal and kotlin, for jython script file path",
301           "required": true,
302           "type": "string"
303         },
304         "instance-dependencies": {
305           "description": "Instance dependency Names to Inject to Kotlin / Jython Script.",
306           "required": false,
307           "type": "list",
308           "entry_schema": {
309             "type": "string"
310           }
311         },
312         "key-dependencies": {
313           "description": "Resource Resolution dependency dictionary names.",
314           "required": true,
315           "type": "list",
316           "entry_schema": {
317             "type": "string"
318           }
319         }
320       },
321       "derived_from": "tosca.nodes.ResourceSource"
322     },
323     "source-default": {
324       "description": "This is Default Resource Source Node Type",
325       "version": "1.0.0",
326       "properties": {},
327       "derived_from": "tosca.nodes.ResourceSource"
328     },
329     "source-input": {
330       "description": "This is Input Resource Source Node Type",
331       "version": "1.0.0",
332       "properties": {},
333       "derived_from": "tosca.nodes.ResourceSource"
334     },
335     "source-processor-db": {
336       "description": "This is Database Resource Source Node Type",
337       "version": "1.0.0",
338       "properties": {
339         "type": {
340           "required": true,
341           "type": "string",
342           "constraints": [
343             {
344               "valid_values": [
345                 "SQL",
346                 "PLSQL"
347               ]
348             }
349           ]
350         },
351         "endpoint-selector": {
352           "required": false,
353           "type": "string"
354         },
355         "query": {
356           "required": true,
357           "type": "string"
358         },
359         "input-key-mapping": {
360           "required": false,
361           "type": "map",
362           "entry_schema": {
363             "type": "string"
364           }
365         },
366         "output-key-mapping": {
367           "required": false,
368           "type": "map",
369           "entry_schema": {
370             "type": "string"
371           }
372         },
373         "key-dependencies": {
374           "required": true,
375           "type": "list",
376           "entry_schema": {
377             "type": "string"
378           }
379         }
380       },
381       "derived_from": "tosca.nodes.ResourceSource"
382     },
383     "source-rest": {
384       "description": "This is Rest Resource Source Node Type",
385       "version": "1.0.0",
386       "properties": {
387         "type": {
388           "required": true,
389           "type": "string",
390           "constraints": [
391             {
392               "valid_values": [
393                 "JSON"
394               ]
395             }
396           ],
397           "default": "JSON"
398         },
399         "verb": {
400           "required": true,
401           "type": "string",
402           "constraints": [
403             {
404               "valid_values": [
405                 "GET",
406                 "POST",
407                 "DELETE",
408                 "PUT"
409               ]
410             }
411           ],
412           "default": "GET"
413         },
414         "payload": {
415           "required": false,
416           "type": "string",
417           "default": ""
418         },
419         "endpoint-selector": {
420           "required": false,
421           "type": "string"
422         },
423         "url-path": {
424           "required": true,
425           "type": "string"
426         },
427         "path": {
428           "required": true,
429           "type": "string"
430         },
431         "expression-type": {
432           "required": false,
433           "type": "string",
434           "constraints": [
435             {
436               "valid_values": [
437                 "JSON_PATH",
438                 "JSON_POINTER"
439               ]
440             }
441           ],
442           "default": "JSON_PATH"
443         },
444         "input-key-mapping": {
445           "required": false,
446           "type": "map",
447           "entry_schema": {
448             "type": "string"
449           }
450         },
451         "output-key-mapping": {
452           "required": false,
453           "type": "map",
454           "entry_schema": {
455             "type": "string"
456           }
457         },
458         "key-dependencies": {
459           "required": true,
460           "type": "list",
461           "entry_schema": {
462             "type": "string"
463           }
464         }
465       },
466       "derived_from": "tosca.nodes.ResourceSource"
467     },
468     "tosca.nodes.Component": {
469       "description": "This is default Component Node",
470       "version": "1.0.0",
471       "derived_from": "tosca.nodes.Root"
472     },
473     "tosca.nodes.ResourceSource": {
474       "description": "TOSCA base type for Resource Sources",
475       "version": "1.0.0",
476       "derived_from": "tosca.nodes.Root"
477     },
478     "tosca.nodes.Vnf": {
479       "description": "This is VNF Node Type",
480       "version": "1.0.0",
481       "derived_from": "tosca.nodes.Root"
482     },
483     "tosca.nodes.Workflow": {
484       "description": "This is Directed Graph Node Type",
485       "version": "1.0.0",
486       "derived_from": "tosca.nodes.Root"
487     },
488     "vnf-netconf-device": {
489       "description": "This is VNF Device with Netconf  Capability",
490       "version": "1.0.0",
491       "capabilities": {
492         "netconf": {
493           "type": "tosca.capabilities.Netconf",
494           "properties": {
495             "login-key": {
496               "required": true,
497               "type": "string",
498               "default": "sdnc"
499             },
500             "login-account": {
501               "required": true,
502               "type": "string",
503               "default": "sdnc-tacacs"
504             },
505             "source": {
506               "required": false,
507               "type": "string",
508               "default": "npm"
509             },
510             "target-ip-address": {
511               "required": true,
512               "type": "string"
513             },
514             "port-number": {
515               "required": true,
516               "type": "integer",
517               "default": 830
518             },
519             "connection-time-out": {
520               "required": false,
521               "type": "integer",
522               "default": 30
523             }
524           }
525         }
526       },
527       "derived_from": "tosca.nodes.Vnf"
528     }
529   }
530 }