Fix service blueprints
[ccsdk/cds.git] / components / model-catalog / blueprint-model / service-blueprint / vLB_CDS_Kotlin / Definitions / vLB_CDS_KOTLIN.json
1 {\r
2   "tosca_definitions_version" : "controller_blueprint_1_0_0",\r
3   "metadata" : {\r
4     "template_author" : "Abdelmuhaimen Seaudi",\r
5     "author-email" : "abdelmuhaimen.seaudi@orange.com",\r
6     "user-groups" : "ADMIN, OPERATION",\r
7     "template_name" : "vLB_CDS_KOTLIN",\r
8     "template_version" : "1.0.0",\r
9     "template_tags" : "test, vDNS-CDS, SCALE-OUT, MARCO"\r
10   },\r
11   "imports" : [ {\r
12     "file" : "Definitions/data_types.json"\r
13   }, {\r
14     "file" : "Definitions/relationship_types.json"\r
15   }, {\r
16     "file" : "Definitions/artifact_types.json"\r
17   }, {\r
18     "file" : "Definitions/node_types.json"\r
19   }, {\r
20     "file" : "Definitions/policy_types.json"\r
21   } ],\r
22   "dsl_definitions" : {\r
23     "ipam-1" : {\r
24       "type" : "token-auth",\r
25       "url" : "http://netbox-nginx:8080",\r
26       "token" : "Token 0123456789abcdef0123456789abcdef01234567"\r
27     },\r
28     "config-deploy-properties" : {\r
29       "resolution-key" : {\r
30         "get_input" : "resolution-key"\r
31       }\r
32     }\r
33   },\r
34   "topology_template" : {\r
35     "workflows" : {\r
36       "resource-assignment" : {\r
37         "steps" : {\r
38           "resource-assignment" : {\r
39             "description" : "Resource Assign Workflow",\r
40             "target" : "resource-assignment"\r
41           }\r
42         },\r
43         "inputs" : {\r
44           "template-prefix" : {\r
45             "required" : true,\r
46             "type" : "list",\r
47             "entry_schema" : {\r
48               "type" : "string"\r
49             }\r
50           },\r
51           "resource-assignment-properties" : {\r
52             "description" : "Dynamic PropertyDefinition for workflow(resource-assignment).",\r
53             "required" : true,\r
54             "type" : "dt-resource-assignment-properties"\r
55           }\r
56         },\r
57         "outputs" : {\r
58           "meshed-template" : {\r
59             "type" : "json",\r
60             "value" : {\r
61               "get_attribute" : [ "resource-assignment", "assignment-params" ]\r
62             }\r
63           }\r
64         }\r
65       },\r
66       "config-assign" : {\r
67         "steps" : {\r
68           "config-assign" : {\r
69             "description" : "Config Assign Workflow",\r
70             "target" : "config-assign",\r
71             "activities" : [ {\r
72               "call_operation" : ""\r
73             } ]\r
74           }\r
75         },\r
76         "inputs" : {\r
77           "resolution-key" : {\r
78             "required" : true,\r
79             "type" : "string"\r
80           },\r
81           "config-assign-properties" : {\r
82             "description" : "Dynamic PropertyDefinition for workflow(config-assign).",\r
83             "required" : true,\r
84             "type" : "dt-config-assign-properties"\r
85           }\r
86         },\r
87         "outputs" : {\r
88           "dry-run" : {\r
89             "type" : "json",\r
90             "value" : {\r
91               "get_attribuxte" : [ "config-assign", "assignment-params" ]\r
92             }\r
93           }\r
94         }\r
95       },\r
96       "config-deploy" : {\r
97         "steps" : {\r
98           "config-deploy" : {\r
99             "description" : "Resource Assign and Kotlin Netconf Activation Workflow",\r
100             "target" : "config-deploy-process",\r
101             "activities" : [ {\r
102               "call_operation" : ""\r
103             } ]\r
104           }\r
105         },\r
106         "inputs" : {\r
107           "resolution-key" : {\r
108             "required" : false,\r
109             "type" : "string"\r
110           },\r
111           "service-instance-id" : {\r
112             "required" : false,\r
113             "type" : "string"\r
114           },\r
115           "config-deploy-properties" : {\r
116             "description" : "Dynamic PropertyDefinition for workflow(config-deploy).",\r
117             "required" : true,\r
118             "type" : "dt-config-deploy-properties"\r
119           }\r
120         }\r
121       }\r
122     },\r
123     "node_templates" : {\r
124       "resource-assignment" : {\r
125         "type" : "component-resource-resolution",\r
126         "interfaces" : {\r
127           "ResourceResolutionComponent" : {\r
128             "operations" : {\r
129               "process" : {\r
130                 "inputs" : {\r
131                   "artifact-prefix-names" : {\r
132                     "get_input" : "template-prefix"\r
133                   }\r
134                 }\r
135               }\r
136             }\r
137           }\r
138         },\r
139         "artifacts" : {\r
140           "base_template-template" : {\r
141             "type" : "artifact-template-velocity",\r
142             "file" : "Templates/base_template-template.vtl"\r
143           },\r
144           "base_template-mapping" : {\r
145             "type" : "artifact-mapping-resource",\r
146             "file" : "Templates/base_template-mapping.json"\r
147           },\r
148           "vpkg-template" : {\r
149             "type" : "artifact-template-velocity",\r
150             "file" : "Templates/vpkg-template.vtl"\r
151           },\r
152           "vpkg-mapping" : {\r
153             "type" : "artifact-mapping-resource",\r
154             "file" : "Templates/vpkg-mapping.json"\r
155           },\r
156           "vdns-template" : {\r
157             "type" : "artifact-template-velocity",\r
158             "file" : "Templates/vdns-template.vtl"\r
159           },\r
160           "vdns-mapping" : {\r
161             "type" : "artifact-mapping-resource",\r
162             "file" : "Templates/vdns-mapping.json"\r
163           },\r
164           "vnf-template" : {\r
165             "type" : "artifact-template-velocity",\r
166             "file" : "Templates/vnf-template.vtl"\r
167           },\r
168           "vnf-mapping" : {\r
169             "type" : "artifact-mapping-resource",\r
170             "file" : "Templates/vnf-mapping.json"\r
171           },\r
172           "vlb-template" : {\r
173             "type" : "artifact-template-velocity",\r
174             "file" : "Templates/vlb-template.vtl"\r
175           },\r
176           "vlb-mapping" : {\r
177             "type" : "artifact-mapping-resource",\r
178             "file" : "Templates/vlb-mapping.json"\r
179           }\r
180         }\r
181       },\r
182       "config-assign" : {\r
183         "type" : "component-resource-resolution",\r
184         "interfaces" : {\r
185           "ResourceResolutionComponent" : {\r
186             "operations" : {\r
187               "process" : {\r
188                 "inputs" : {\r
189                   "resolution-key" : {\r
190                     "get_input" : "resolution-key"\r
191                   },\r
192                   "store-result" : true,\r
193                   "artifact-prefix-names" : [ "baseconfig", "incremental-config" ]\r
194                 }\r
195               }\r
196             }\r
197           }\r
198         },\r
199         "artifacts" : {\r
200           "baseconfig-template" : {\r
201             "type" : "artifact-template-velocity",\r
202             "file" : "Templates/baseconfig-template.vtl"\r
203           },\r
204           "baseconfig-mapping" : {\r
205             "type" : "artifact-mapping-resource",\r
206             "file" : "Templates/baseconfig-mapping.json"\r
207           },\r
208           "incremental-config-template" : {\r
209             "type" : "artifact-template-velocity",\r
210             "file" : "Templates/incremental-config-template.vtl"\r
211           },\r
212           "incremental-config-mapping" : {\r
213             "type" : "artifact-mapping-resource",\r
214             "file" : "Templates/incremental-config-mapping.json"\r
215           }\r
216         }\r
217       },\r
218       "netconf-device" : {\r
219         "type" : "vnf-netconf-device",\r
220         "capabilities" : {\r
221           "netconf" : {\r
222             "properties" : {\r
223               "login-key" : "admin",\r
224               "login-account" : "admin",\r
225               "target-ip-address" : {\r
226                 "get_attribute" : [ "nf-account-collection", "", "assignment-params", "nf-params" ]\r
227               },\r
228               "port-number" : 2831,\r
229               "connection-time-out" : 5\r
230             }\r
231           }\r
232         }\r
233       },\r
234       "config-deploy-process" : {\r
235         "type" : "dg-generic",\r
236         "properties" : {\r
237           "content" : {\r
238             "get_artifact" : [ "SELF", "dg-config-deploy-process" ]\r
239           },\r
240           "dependency-node-templates" : [ "nf-account-collection", "execute" ]\r
241         },\r
242         "artifacts" : {\r
243           "dg-config-deploy-process" : {\r
244             "type" : "artifact-directed-graph",\r
245             "file" : "Plans/CONFIG_ConfigDeploy.xml"\r
246           }\r
247         }\r
248       },\r
249       "nf-account-collection" : {\r
250         "type" : "component-resource-resolution",\r
251         "interfaces" : {\r
252           "ResourceResolutionComponent" : {\r
253             "operations" : {\r
254               "process" : {\r
255                 "inputs" : {\r
256                   "artifact-prefix-names" : [ "nf-params" ]\r
257                 }\r
258               }\r
259             }\r
260           }\r
261         },\r
262         "artifacts" : {\r
263           "nf-params-template" : {\r
264             "type" : "artifact-template-velocity",\r
265             "file" : "Templates/nf-params-template.vtl"\r
266           },\r
267           "nf-params-mapping" : {\r
268             "type" : "artifact-mapping-resource",\r
269             "file" : "Templates/nf-params-mapping.json"\r
270           }\r
271         }\r
272       },\r
273       "execute" : {\r
274         "type" : "component-netconf-executor",\r
275         "requirements" : {\r
276           "netconf-connection" : {\r
277             "capability" : "netconf",\r
278             "node" : "netconf-device",\r
279             "relationship" : "tosca.relationships.ConnectsTo"\r
280           }\r
281         },\r
282         "interfaces" : {\r
283           "ComponentNetconfExecutor" : {\r
284             "operations" : {\r
285               "process" : {\r
286                 "inputs" : {\r
287                   "script-type" : "kotlin",\r
288                   "script-class-reference" : "org.onap.ccsdk.cds.blueprintsprocessor.services.execution.scripts.ConfigDeploy",\r
289                   "instance-dependencies" : [ ],\r
290                   "dynamic-properties" : "*config-deploy-properties"\r
291                 }\r
292               }\r
293             }\r
294           }\r
295         }\r
296       }\r
297     }\r
298   }\r
299 }\r