3 "template_author": "Brinda Santh Muthuramalingam",
4 "author-email": "brindasanth@in.ibm.com",
5 "user-groups": "ADMIN, OPERATION",
6 "template_name": "baseconfiguration",
7 "template_version": "1.0.0",
8 "template_tags": "brinda, tosca"
12 "file": "Definitions/data_types.json"
15 "file": "Definitions/relationship_types.json"
18 "file": "Definitions/artifact_types.json"
21 "file": "Definitions/node_types.json"
24 "file": "Definitions/policy_types.json"
28 "dynamic-netconf-properties": {
29 "device-name": "netconf device",
30 "host-name": "sample-host"
32 "dynamic-rest-source": {
34 "url": "http://localhost:8080",
36 "get_input": "rest-user-name"
39 "dynamic-db-source": {
41 "url": "jdbc:mysql://localhost:3306/sdnctl",
46 "dynamic-db-source.password"
51 "topology_template": {
71 "resource-assignment-process": {
77 "dg-resource-assignment-process"
80 "dependency-node-templates": [
85 "dg-resource-assignment-process": {
86 "type": "artifact-directed-graph",
87 "file": "Plans/CONFIG_ResourceAssignment_1.0.0.xml"
100 "dependency-node-templates": [
105 "dg-activate-process": {
106 "type": "artifact-directed-graph",
107 "file": "Plans/CONFIG_ActivateNetconf_1.0.0.xml"
111 "assign-activate-process": {
112 "type": "dg-generic",
117 "dg-assign-activate-process"
120 "dependency-node-templates": [
121 "resource-assignment",
126 "dg-assign-activate-process": {
127 "type": "artifact-directed-graph",
128 "file": "Plans/CONFIG_AssignActivateNetconf_1.0.0.xml"
132 "resource-assignment": {
133 "type": "component-resource-resolution",
135 "ResourceResolutionComponent": {
140 "get_input": "action-name"
142 "resource-type": "vnf-type",
144 "get_input": "request-id"
147 "get_input": "hostname"
149 "artifact-prefix-names": [
154 "resource-assignment-params": {
167 "baseconfig-template": {
168 "type": "artifact-template-velocity",
169 "file": "Templates/baseconfig-template.vtl"
171 "baseconfig-mapping": {
172 "type": "artifact-mapping-resource",
173 "file": "Definitions/baseconfig-mapping.json"
175 "another-template": {
176 "type": "artifact-template-jinja",
177 "file": "Templates/another-template.jinja"
180 "type": "artifact-mapping-resource",
181 "file": "Definitions/another-mapping.json"
183 "maxoccurrence-template": {
184 "type": "artifact-template-velocity",
185 "file": "Templates/maxoccurrence-template.vtl"
187 "maxoccurrence-mapping": {
188 "type": "artifact-mapping-resource",
189 "file": "Definitions/maxoccurrence-mapping.json"
191 "notemplate-mapping": {
192 "type": "artifact-mapping-resource",
193 "file": "Definitions/notemplate-mapping.json"
197 "resource-assignment-py": {
198 "type": "component-resource-resolution",
200 "ResourceResolutionComponent": {
204 "primary": "component-script"
208 "get_input": "action-name"
212 "resource-assignment-params": "",
220 "component-script": {
221 "type": "artifact-script-jython",
222 "file": "Scripts/python/SamplePythonComponentNode.py"
227 "type": "component-jython-executor",
229 "ComponentJythonExecutor": {
233 "primary": "component-script"
236 "instance-dependencies": [
237 "json-parser-service"
249 "component-script": {
250 "type": "artifact-script-jython",
251 "file": "Scripts/python/SamplePythonComponentNode.py"
255 "activate-netconf": {
256 "type": "component-netconf-executor",
258 "ComponentNetconfExecutor": {
262 "primary": "component-script"
265 "script-type": "jython",
266 "script-class-reference": "Scripts/python/NetconfRpcExample.py",
267 "instance-dependencies": [
269 "dynamic-properties": "*dynamic-netconf-properties"
280 "netconf-connection": {
281 "capability": "netconf",
282 "node": "sample-netconf-device",
283 "relationship": "tosca.relationships.ConnectsTo"
287 "hostname-template": {
288 "type": "artifact-template-velocity",
289 "file": "Templates/hostname-template.vtl"
291 "hostname-mapping": {
292 "type": "artifact-mapping-resource",
293 "file": "Definitions/hostname-mapping.json"
295 "component-script": {
296 "type": "artifact-script-jython",
297 "file": "Scripts/python/NetconfRpcExample.py"
301 "activate-restconf": {
302 "type": "component-script-executor",
304 "ComponentScriptExecutor": {
308 "primary": "component-script"
311 "script-type": "kotlin",
312 "script-class-reference": "DefaultRestconf_cba$MountNEditConfigure"
324 "type": "component-script-executor",
326 "ComponentScriptExecutor": {
330 "primary": "component-script"
333 "script-type": "internal",
334 "script-class-reference": "internal.scripts.TestCliScriptFunction"
345 "sample-netconf-device": {
346 "type": "vnf-netconf-device",
350 "login-key": "sample-key",
351 "login-account": "sample-account",
352 "target-ip-address": {
354 "resource-assignment",
361 "connection-time-out": 30
367 "relationship_templates": {
368 "cli-device-properties": {
369 "type": "tosca.relationships.ConnectsTo.SshClient",
370 "description": "SSH Connection",
372 "connection-config": {
373 "password": "sample-password",
375 "get_input": "hostname"
377 "type": "basic-auth",
378 "connectionTimeOut": 30,
379 "username": "sample-user"
385 "resource-assignment": {
387 "resource-assignment-properties": {
389 "type": "dt-resource-assignment-properties"
393 "call-resource-assignment": {
394 "description": "Resource Assignment Workflow",
395 "target": "resource-assignment-process",
398 "call_operation": "CONFIG.ResourceAssignment"
404 "response-property": {
408 "template-properties": {
412 "resource-assignment",
439 "activate-process": {
440 "description": "Netconf Activation Workflow",
441 "target": "activate-process",
444 "call_operation": "CONFIG.ActivateProcess"
450 "activate-restconf": {
452 "activate-process": {
453 "description": "Activate Restconf flow",
454 "target": "activate-restconf",
457 "call_operation": "ComponentRestconfExecutor.process"
465 "activate-process": {
466 "description": "Activate CLI flow",
467 "target": "activate-cli",
470 "call_operation": "ComponentScriptExecutor.process"
478 "assign-activate-properties": {
480 "type": "dt-assign-activate-properties"
484 "activate-process": {
485 "description": "Resource Assign and Netconf Activation Workflow",
486 "target": "assign-activate-process",
489 "call_operation": "CONFIG.AssignActivateProcess"
495 "imperative-test-wf": {
498 "description": "Activate CLI flow 1",
499 "target": "activate-cli",
502 "call_operation": "ComponentScriptExecutor.process"
510 "description": "Activate CLI flow 2",
511 "target": "activate-cli",
514 "call_operation": "ComponentScriptExecutor.process"
522 "description": "Activate CLI flow 3",
523 "target": "activate-cli",
526 "call_operation": "ComponentScriptExecutor.process"