Merge "Display artifacts in Function attributes tab."
[ccsdk/cds.git] / components / model-catalog / blueprint-model / service-blueprint / PNF_DEMO / 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           "description" : "Holds resolved template, resolution-summary or key-value",
81           "required" : true,
82           "type" : "string"
83         },
84         "assignment-map" : {
85           "description" : "Holds resolved values for each artifact prefix eg. { vdns: { vnf-id: 123 } }",
86           "required" : true,
87           "type" : "map"
88         }
89       },
90       "capabilities" : {
91         "component-node" : {
92           "type" : "tosca.capabilities.Node"
93         }
94       },
95       "interfaces" : {
96         "ResourceResolutionComponent" : {
97           "operations" : {
98             "process" : {
99               "inputs" : {
100                 "resolution-key" : {
101                   "description" : "Key for service instance related correlation.",
102                   "required" : false,
103                   "type" : "string"
104                 },
105                 "occurrence" : {
106                   "description" : "Number of time to perform the resolution.",
107                   "required" : false,
108                   "type" : "integer",
109                   "default" : 1
110                 },
111                 "store-result" : {
112                   "description" : "Whether or not to store the output.",
113                   "required" : false,
114                   "type" : "boolean"
115                 },
116                 "resource-type" : {
117                   "description" : "Request type.",
118                   "required" : false,
119                   "type" : "string"
120                 },
121                 "resolution-summary" : {
122                   "description" : "Enable resolution-summary output",
123                   "required" : false,
124                   "type" : "boolean"
125                 },
126                 "artifact-prefix-names" : {
127                   "description" : "Template , Resource Assignment Artifact Prefix names",
128                   "required" : true,
129                   "type" : "list",
130                   "entry_schema" : {
131                     "type" : "string"
132                   }
133                 },
134                 "request-id" : {
135                   "description" : "Request Id, Unique Id for the request.",
136                   "required" : true,
137                   "type" : "string"
138                 },
139                 "resource-id" : {
140                   "description" : "Resource Id.",
141                   "required" : false,
142                   "type" : "string"
143                 },
144                 "action-name" : {
145                   "description" : "Action Name of the process",
146                   "required" : false,
147                   "type" : "string"
148                 },
149                 "dynamic-properties" : {
150                   "description" : "Dynamic Json Content or DSL Json reference.",
151                   "required" : false,
152                   "type" : "json"
153                 }
154               },
155               "outputs" : {
156                 "resource-assignment-params" : {
157                   "required" : true,
158                   "type" : "string"
159                 },
160                 "resource-assignment-map" : {
161                   "required" : true,
162                   "type" : "string"
163                 },
164                 "status" : {
165                   "required" : true,
166                   "type" : "string"
167                 }
168               }
169             }
170           }
171         }
172       },
173       "derived_from" : "tosca.nodes.Component"
174     },
175     "source-input" : {
176       "description" : "This is Input Resource Source Node Type",
177       "version" : "1.0.0",
178       "properties" : { },
179       "derived_from" : "tosca.nodes.ResourceSource"
180     },
181     "tosca.nodes.Component" : {
182       "description" : "This is default Component Node",
183       "version" : "1.0.0",
184       "derived_from" : "tosca.nodes.Root"
185     },
186     "tosca.nodes.ResourceSource" : {
187       "description" : "TOSCA base type for Resource Sources",
188       "version" : "1.0.0",
189       "derived_from" : "tosca.nodes.Root"
190     },
191     "tosca.nodes.Vnf" : {
192       "description" : "This is VNF Node Type",
193       "version" : "1.0.0",
194       "derived_from" : "tosca.nodes.Root"
195     },
196     "vnf-netconf-device" : {
197       "description" : "This is VNF Device with Netconf  Capability",
198       "version" : "1.0.0",
199       "capabilities" : {
200         "netconf" : {
201           "type" : "tosca.capabilities.Netconf",
202           "properties" : {
203             "login-key" : {
204               "required" : true,
205               "type" : "string",
206               "default" : "sdnc"
207             },
208             "login-account" : {
209               "required" : true,
210               "type" : "string",
211               "default" : "sdnc-tacacs"
212             },
213             "source" : {
214               "required" : false,
215               "type" : "string",
216               "default" : "npm"
217             },
218             "target-ip-address" : {
219               "required" : true,
220               "type" : "string"
221             },
222             "port-number" : {
223               "required" : true,
224               "type" : "integer",
225               "default" : 830
226             },
227             "connection-time-out" : {
228               "required" : false,
229               "type" : "integer",
230               "default" : 30
231             }
232           }
233         },
234         "restconf" : {
235           "type" : "tosca.capabilities.Restconf",
236           "properties" : {
237             "login-key" : {
238               "required" : true,
239               "type" : "string"
240             },
241             "login-account" : {
242               "required" : true,
243               "type" : "string"
244             },
245             "target-ip-address" : {
246               "required" : true,
247               "type" : "string"
248             },
249             "port-number" : {
250               "required" : true,
251               "type" : "integer"
252             },
253             "connection-time-out" : {
254               "required" : false,
255               "type" : "integer",
256               "default" : 30
257             }
258           }
259         }
260       },
261       "derived_from" : "tosca.nodes.Vnf"
262     }
263   }
264 }