60846f6c4af9d4bb951d3d2bcdf6df344626edf9
[demo.git] / heat / vFW_CNF_CDS / templates / cba / Definitions / vFW_CNF_CDS.json
1 {
2     "tosca_definitions_version": "controller_blueprint_1_0_0",
3     "metadata": {
4         "template_author": "Samuli Silvius <s.silvius@partner.samsung.com>",
5         "author-email": "lukasz.rajewski@orange.com",
6         "user-groups": "ADMIN, OPERATION",
7         "template_name": "vFW_CNF_CDS",
8         "template_version": "7.0.0",
9         "template_tags": "Samuli Silvius, Lukasz Rajewski, vFW_CNF_CDS",
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         "config-deploy-properties": {
37             "resolution-key": {
38                 "get_input": "resolution-key"
39             }
40         }
41     },
42     "topology_template": {
43         "workflows": {
44             "resource-assignment": {
45                 "steps": {
46                     "resource-assignment": {
47                         "description": "Resource Assign Workflow",
48                         "target": "resource-assignment",
49                         "activities": [
50                             {
51                                 "call_operation": "ResourceResolutionComponent.process"
52                             }
53                         ],
54                         "on_success": [
55                             "profile-upload"
56                         ]
57                     },
58                     "profile-upload": {
59                         "description": "Generate and upload K8s Profile",
60                         "target": "k8s-profile-upload",
61                         "activities": [
62                             {
63                                 "call_operation": "ComponentScriptExecutor.process"
64                             }
65                         ]
66                     }
67                 },
68                 "inputs": {
69                     "template-prefix": {
70                         "required": true,
71                         "type": "list",
72                         "entry_schema": {
73                             "type": "string"
74                         }
75                     },
76                     "resolution-key": {
77                         "required": false,
78                         "type": "string",
79                         "entry_schema": {
80                             "type": ""
81                         }
82                     },
83                     "resource-assignment-properties": {
84                         "description": "Dynamic PropertyDefinition for workflow(resource-assignment).",
85                         "required": true,
86                         "type": "dt-resource-assignment-properties"
87                     }
88                 },
89                 "outputs": {
90                     "meshed-template": {
91                         "type": "json",
92                         "value": {
93                             "get_attribute": [
94                                 "resource-assignment",
95                                 "assignment-params"
96                             ]
97                         }
98                     }
99                 }
100             },
101             "config-deploy": {
102                 "steps": {
103                     "config-deploy": {
104                         "description": "Config Deploy Workflow",
105                         "target": "config-deploy-process"
106                     }
107                 },
108                 "inputs": {
109                     "config-deploy-properties": {
110                         "description": "Dynamic PropertyDefinition for workflow(config-deploy).",
111                         "required": true,
112                         "type": "dt-config-deploy-properties"
113                     }
114                 },
115                 "outputs": {
116                     "dry-run": {
117                         "type": "json",
118                         "value": {
119                             "get_attribute": [
120                                 "config-deploy-process",
121                                 "assignment-params"
122                             ]
123                         }
124                     }
125                 }
126             }
127         },
128         "node_templates": {
129             "resource-assignment": {
130                 "type": "component-resource-resolution",
131                 "interfaces": {
132                     "ResourceResolutionComponent": {
133                         "operations": {
134                             "process": {
135                                 "inputs": {
136                                     "artifact-prefix-names": {
137                                         "get_input": "template-prefix"
138                                     }
139                                 }
140                             }
141                         }
142                     }
143                 },
144                 "artifacts": {
145                     "helm_base_template-template": {
146                         "type": "artifact-template-velocity",
147                         "file": "Templates/base_template-template.vtl"
148                     },
149                     "helm_base_template-mapping": {
150                         "type": "artifact-mapping-resource",
151                         "file": "Templates/base_template-mapping.json"
152                     },
153                     "helm_vpkg-template": {
154                         "type": "artifact-template-velocity",
155                         "file": "Templates/vpkg-template.vtl"
156                     },
157                     "helm_vpkg-mapping": {
158                         "type": "artifact-mapping-resource",
159                         "file": "Templates/vpkg-mapping.json"
160                     },
161                     "helm_vfw-template": {
162                         "type": "artifact-template-velocity",
163                         "file": "Templates/vfw-template.vtl"
164                     },
165                     "helm_vfw-mapping": {
166                         "type": "artifact-mapping-resource",
167                         "file": "Templates/vfw-mapping.json"
168                     },
169                     "vnf-template": {
170                         "type": "artifact-template-velocity",
171                         "file": "Templates/vnf-template.vtl"
172                     },
173                     "vnf-mapping": {
174                         "type": "artifact-mapping-resource",
175                         "file": "Templates/vnf-mapping.json"
176                     },
177                     "helm_vsn-template": {
178                         "type": "artifact-template-velocity",
179                         "file": "Templates/vsn-template.vtl"
180                     },
181                     "helm_vsn-mapping": {
182                         "type": "artifact-mapping-resource",
183                         "file": "Templates/vsn-mapping.json"
184                     }
185                 }
186             },
187             "k8s-profile-upload": {
188                 "type": "component-k8s-profile-upload",
189                 "interfaces": {
190                     "K8sProfileUploadComponent": {
191                         "operations": {
192                             "process": {
193                                 "inputs": {
194                                     "artifact-prefix-names": {
195                                         "get_input": "template-prefix"
196                                     },
197                                     "resource-assignment-map": {
198                                         "get_attribute": [
199                                             "resource-assignment",
200                                             "assignment-map"
201                                         ]
202                                     }
203                                 }
204                             }
205                         }
206                     }
207                 },
208                 "artifacts": {
209                     "vfw-cnf-cds-base-profile": {
210                         "type": "artifact-k8sprofile-content",
211                         "file": "Templates/k8s-profiles/vfw-cnf-cds-base-profile.tar.gz"
212                     },
213                     "vfw-cnf-cds-vpkg-profile": {
214                         "type": "artifact-k8sprofile-content",
215                         "file": "Templates/k8s-profiles/vfw-cnf-cds-vpkg-profile"
216                     },
217                     "vfw-cnf-cds-vpkg-profile-mapping": {
218                         "type": "artifact-mapping-resource",
219                         "file": "Templates/k8s-profiles/vfw-cnf-cds-vpkg-profile/ssh-service-mapping.json"
220                     }
221                 }
222             },
223             "config-deploy-process": {
224                 "type": "component-resource-resolution",
225                 "interfaces": {
226                     "ResourceResolutionComponent": {
227                         "operations": {
228                             "process": {
229                                 "inputs": {
230                                     "artifact-prefix-names": [
231                                         "nf-params"
232                                     ]
233                                 }
234                             }
235                         }
236                     }
237                 },
238                 "artifacts": {
239                     "nf-params-template": {
240                         "type": "artifact-template-velocity",
241                         "file": "Templates/nf-params-template.vtl"
242                     },
243                     "nf-params-mapping": {
244                         "type": "artifact-mapping-resource",
245                         "file": "Templates/nf-params-mapping.json"
246                     }
247                 }
248             }
249         }
250     }
251 }