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