5G Core Network Service CBA package upload
[ccsdk/cds.git] / components / model-catalog / blueprint-model / service-blueprint / 5GC_Simulator_CNF_CDS / Definitions / 5G_Core.json
1 {
2   "tosca_definitions_version": "controller_blueprint_1_0_0",
3   "metadata": {
4     "template_author": "Thamlur Raju <TR00568434@TechMahindra.com>",
5     "author-email": "TR00568434@TechMahindra.com",
6     "user-groups": "ADMIN, OPERATION",
7     "template_name": "5G_Core",
8     "template_version": "1.0.37",
9     "template_tags": "Thamlur Raju, Malinconico Aniello Paolo, Vamshi Namilikonda, 5G_Core",
10     "template_type": "DEFAULT"
11   },
12   "imports": [
13     {
14       "file": "Definitions/data_types.json"
15     },
16     {
17       "file": "Definitions/relationship_types.json"
18     },
19     {
20       "file": "Definitions/artifact_types.json"
21     },
22     {
23       "file": "Definitions/node_types.json"
24     },
25     {
26       "file": "Definitions/policy_types.json"
27     }
28   ],
29   "dsl_definitions": {
30     "vpkg-rest-api": {
31       "type": "basic-auth",
32       "url": "http://",
33       "username": "admin",
34       "password": "admin"
35     },
36     "multicloud-k8s-api": {
37       "type": "basic-auth",
38       "username": "admin",
39       "password": "admin",
40       "url": "http://multicloud-k8s:9015"
41     },
42     "aai-api": {
43       "type": "basic-auth",
44       "username": "AAI",
45       "password": "AAI",
46       "url": "https://aai.onap:8443"
47     },
48     "profile-upload-properties": {
49       "assignment-params": {
50         "get_attribute": [
51           "resource-assignment",
52           "assignment-params"
53         ]
54       },
55       "api-access": "*multicloud-k8s-api"
56     },
57     "config-deploy-properties": {
58       "resolution-key": {
59         "get_input": "resolution-key"
60       },
61       "api-access": "*multicloud-k8s-api",
62       "aai-access": "*aai-api"
63     },
64     "config-deploy-day-2-properties": {
65       "resolution-key": {
66         "get_input": "resolution-key"
67       },
68       "api-access": "*multicloud-k8s-api",
69       "aai-access": "*aai-api"
70     }
71   },
72   "topology_template": {
73     "workflows": {
74       "resource-assignment": {
75         "steps": {
76           "resource-assignment": {
77             "description": "Resource Assign Workflow",
78             "target": "resource-assignment",
79             "activities": [
80               {
81                 "call_operation": "ResourceResolutionComponent.process"
82               }
83             ],
84             "on_success": [
85               "profile-upload"
86             ]
87           },
88           "profile-upload": {
89             "description": "Upload K8s Profile",
90             "target": "profile-upload",
91             "activities": [
92               {
93                 "call_operation": "ComponentScriptExecutor.process"
94               }
95             ]
96           }
97         },
98         "inputs": {
99           "template-prefix": {
100             "required": true,
101             "type": "list",
102             "entry_schema": {
103               "type": "string"
104             }
105           },
106           "resolution-key": {
107             "required": false,
108             "type": "string",
109             "entry_schema": {
110               "type": ""
111             }
112           },
113           "resource-assignment-properties": {
114             "description": "Dynamic PropertyDefinition for workflow(resource-assignment).",
115             "required": true,
116             "type": "dt-resource-assignment-properties"
117           }
118         },
119         "outputs": {
120           "meshed-template": {
121             "type": "json",
122             "value": {
123               "get_attribute": [
124                 "resource-assignment",
125                 "assignment-params"
126               ]
127             }
128           }
129         }
130       },
131       "config-assign": {
132         "steps": {
133           "config-assign": {
134             "description": "Config Assign Workflow",
135             "target": "config-assign",
136             "activities": [
137               {
138                 "call_operation": ""
139               }
140             ]
141           }
142         },
143         "inputs": {
144           "resolution-key": {
145             "required": true,
146             "type": "string"
147           },
148           "store-result": {
149             "required": true,
150             "type": "boolean"
151           },
152           "config-assign-properties": {
153             "description": "Dynamic PropertyDefinition for workflow(config-assign).",
154             "required": true,
155             "type": "dt-config-assign-properties"
156           }
157         },
158         "outputs": {
159           "dry-run": {
160             "type": "json",
161             "value": {
162               "get_attribute": [
163                 "config-assign",
164                 "assignment-params"
165               ]
166             }
167           }
168         }
169       },
170       "config-assign-day-2": {
171         "steps": {
172           "config-assign": {
173             "description": "Config Assign Workflow",
174             "target": "config-assign-day-2",
175             "activities": [
176               {
177                 "call_operation": ""
178               }
179             ]
180           }
181         },
182         "inputs": {
183           "resolution-key": {
184             "required": true,
185             "type": "string"
186           },
187           "store-result": {
188             "required": true,
189             "type": "boolean"
190           },
191           "config-assign-day-2-properties": {
192             "description": "Dynamic PropertyDefinition for workflow(config-assign).",
193             "required": true,
194             "type": "dt-config-assign-day-2-properties"
195           }
196         },
197         "outputs": {
198           "dry-run": {
199             "type": "json",
200             "value": {
201               "get_attribute": [
202                 "config-assign-day-2",
203                 "assignment-params"
204               ]
205             }
206           }
207         }
208       },
209       "config-deploy": {
210         "steps": {
211           "imperative-workflow-step-1": {
212             "description": "Config Deploy workflow",
213             "target": "execute-post",
214             "activities": [
215               {
216                 "call_operation": "ComponentScriptExecutor.process"
217               }
218             ]
219           }
220         },
221         "inputs": {
222           "resolution-key": {
223             "required": false,
224             "type": "string"
225           },
226           "service-instance-id": {
227             "required": false,
228             "type": "string"
229           },
230           "config-deploy-properties": {
231             "description": "Dynamic PropertyDefinition for workflow(config-deploy).",
232             "required": true,
233             "type": "dt-config-deploy-properties"
234           }
235         }
236       },
237       "config-deploy-day-2": {
238         "steps": {
239           "imperative-workflow-step-1": {
240             "description": "Config Deploy workflow",
241             "target": "execute-put",
242             "activities": [
243               {
244                 "call_operation": "ComponentScriptExecutor.process"
245               }
246             ]
247           }
248         },
249         "inputs": {
250           "resolution-key": {
251             "required": false,
252             "type": "string"
253           },
254           "service-instance-id": {
255             "required": false,
256             "type": "string"
257           },
258           "config-deploy-day-2-properties": {
259             "description": "Dynamic PropertyDefinition for workflow(config-deploy).",
260             "required": true,
261             "type": "dt-config-deploy-day-2-properties"
262           }
263         }
264       }
265     },
266     "node_templates": {
267       "resource-assignment": {
268         "type": "component-resource-resolution",
269         "interfaces": {
270           "ResourceResolutionComponent": {
271             "operations": {
272               "process": {
273                 "inputs": {
274                   "artifact-prefix-names": {
275                     "get_input": "template-prefix"
276                   }
277                 }
278               }
279             }
280           }
281         },
282         "artifacts": {
283           "base_template-template": {
284             "type": "artifact-template-velocity",
285             "file": "Templates/base_template-template.vtl"
286           },
287           "base_template-mapping": {
288             "type": "artifact-mapping-resource",
289             "file": "Templates/base_template-mapping.json"
290           },
291           "amf-template": {
292             "type": "artifact-template-velocity",
293             "file": "Templates/amf-template.vtl"
294           },
295           "amf-mapping": {
296             "type": "artifact-mapping-resource",
297             "file": "Templates/amf-mapping.json"
298           },
299           "smf-template": {
300             "type": "artifact-template-velocity",
301             "file": "Templates/smf-template.vtl"
302           },
303           "smf-mapping": {
304             "type": "artifact-mapping-resource",
305             "file": "Templates/smf-mapping.json"
306           },
307           "upf-template": {
308             "type": "artifact-template-velocity",
309             "file": "Templates/upf-template.vtl"
310           },
311           "upf-mapping": {
312             "type": "artifact-mapping-resource",
313             "file": "Templates/upf-mapping.json"
314           },
315           "vnf-template": {
316             "type": "artifact-template-velocity",
317             "file": "Templates/vnf-template.vtl"
318           },
319           "vnf-mapping": {
320             "type": "artifact-mapping-resource",
321             "file": "Templates/vnf-mapping.json"
322           }
323         }
324       },
325       "profile-upload": {
326         "type": "component-script-executor",
327         "interfaces": {
328           "ComponentScriptExecutor": {
329             "operations": {
330               "process": {
331                 "inputs": {
332                   "script-type": "kotlin",
333                   "script-class-reference": "org.onap.ccsdk.cds.blueprintsprocessor.services.execution.scripts.K8sProfileUpload",
334                   "dynamic-properties": "*profile-upload-properties"
335                 }
336               }
337             }
338           }
339         }
340       },
341       "config-assign": {
342         "type": "component-resource-resolution",
343         "interfaces": {
344           "ResourceResolutionComponent": {
345             "operations": {
346               "process": {
347                 "inputs": {
348                   "resolution-key": {
349                     "get_input": "resolution-key"
350                   },
351                   "store-result": true,
352                   "artifact-prefix-names": [
353                     "baseconfig"
354                   ]
355                 }
356               }
357             }
358           }
359         },
360         "artifacts": {
361           "baseconfig-template": {
362             "type": "artifact-template-velocity",
363             "file": "Templates/baseconfig-template.vtl"
364           },
365           "baseconfig-mapping": {
366             "type": "artifact-mapping-resource",
367             "file": "Templates/baseconfig-mapping.json"
368           }
369         }
370       },
371       "config-assign-day-2": {
372         "type": "component-resource-resolution",
373         "interfaces": {
374           "ResourceResolutionComponent": {
375             "operations": {
376               "process": {
377                 "inputs": {
378                   "resolution-key": {
379                     "get_input": "resolution-key"
380                   },
381                   "store-result": true,
382                   "artifact-prefix-names": [
383                     "baseconfigput"
384                   ]
385                 }
386               }
387             }
388           }
389         },
390         "artifacts": {
391           "baseconfigput-template": {
392             "type": "artifact-template-velocity",
393             "file": "Templates/baseconfigput-template.vtl"
394           },
395           "baseconfigput-mapping": {
396             "type": "artifact-mapping-resource",
397             "file": "Templates/baseconfigput-mapping.json"
398           }
399         }
400       },
401       "execute-post": {
402         "type": "component-script-executor",
403         "interfaces": {
404           "ComponentScriptExecutor": {
405             "operations": {
406               "process": {
407                 "inputs": {
408                   "script-type": "kotlin",
409                   "script-class-reference": "org.onap.ccsdk.cds.blueprintsprocessor.services.execution.scripts.DayOneConfig",
410                   "dynamic-properties": "*config-deploy-properties"
411                 }
412               }
413             }
414           }
415         }
416       },
417       "execute-put": {
418         "type": "component-script-executor",
419         "interfaces": {
420           "ComponentScriptExecutor": {
421             "operations": {
422               "process": {
423                 "inputs": {
424                   "script-type": "kotlin",
425                   "script-class-reference": "org.onap.ccsdk.cds.blueprintsprocessor.services.execution.scripts.KotlinK8sUpdateConfig",
426                   "dynamic-properties": "*config-deploy-day-2-properties"
427                 }
428               }
429             }
430           }
431         }
432       }
433     }
434   }
435 }