{ "tosca_definitions_version" : "controller_blueprint_1_0_0", "metadata" : { "template_author" : "Abdelmuhaimen Seaudi", "author-email" : "abdelmuhaimen.seaudi@orange.com", "user-groups" : "ADMIN, OPERATION", "template_name" : "vLB_CDS_KOTLIN", "template_version" : "1.0.0", "template_tags" : "test, vDNS-CDS, SCALE-OUT, MARCO" }, "imports" : [ { "file" : "Definitions/data_types.json" }, { "file" : "Definitions/relationship_types.json" }, { "file" : "Definitions/artifact_types.json" }, { "file" : "Definitions/node_types.json" }, { "file" : "Definitions/policy_types.json" } ], "dsl_definitions" : { "ipam-1" : { "type" : "token-auth", "url" : "http://netbox-nginx:8080", "token" : "Token 0123456789abcdef0123456789abcdef01234567" }, "config-deploy-properties" : { "resolution-key" : { "get_input" : "resolution-key" } } }, "topology_template" : { "workflows" : { "resource-assignment" : { "steps" : { "resource-assignment" : { "description" : "Resource Assign Workflow", "target" : "resource-assignment" } }, "inputs" : { "template-prefix" : { "required" : true, "type" : "list", "entry_schema" : { "type" : "string" } }, "resource-assignment-properties" : { "description" : "Dynamic PropertyDefinition for workflow(resource-assignment).", "required" : true, "type" : "dt-resource-assignment-properties" } }, "outputs" : { "meshed-template" : { "type" : "json", "value" : { "get_attribute" : [ "resource-assignment", "assignment-params" ] } } } }, "config-assign" : { "steps" : { "config-assign" : { "description" : "Config Assign Workflow", "target" : "config-assign", "activities" : [ { "call_operation" : "" } ] } }, "inputs" : { "resolution-key" : { "required" : true, "type" : "string" }, "config-assign-properties" : { "description" : "Dynamic PropertyDefinition for workflow(config-assign).", "required" : true, "type" : "dt-config-assign-properties" } }, "outputs" : { "dry-run" : { "type" : "json", "value" : { "get_attribuxte" : [ "config-assign", "assignment-params" ] } } } }, "config-deploy" : { "steps" : { "config-deploy" : { "description" : "Resource Assign and Kotlin Netconf Activation Workflow", "target" : "config-deploy-process", "activities" : [ { "call_operation" : "" } ] } }, "inputs" : { "resolution-key" : { "required" : false, "type" : "string" }, "service-instance-id" : { "required" : false, "type" : "string" }, "config-deploy-properties" : { "description" : "Dynamic PropertyDefinition for workflow(config-deploy).", "required" : true, "type" : "dt-config-deploy-properties" } } } }, "node_templates" : { "resource-assignment" : { "type" : "component-resource-resolution", "interfaces" : { "ResourceResolutionComponent" : { "operations" : { "process" : { "inputs" : { "artifact-prefix-names" : { "get_input" : "template-prefix" } } } } } }, "artifacts" : { "base_template-template" : { "type" : "artifact-template-velocity", "file" : "Templates/base_template-template.vtl" }, "base_template-mapping" : { "type" : "artifact-mapping-resource", "file" : "Templates/base_template-mapping.json" }, "vpkg-template" : { "type" : "artifact-template-velocity", "file" : "Templates/vpkg-template.vtl" }, "vpkg-mapping" : { "type" : "artifact-mapping-resource", "file" : "Templates/vpkg-mapping.json" }, "vdns-template" : { "type" : "artifact-template-velocity", "file" : "Templates/vdns-template.vtl" }, "vdns-mapping" : { "type" : "artifact-mapping-resource", "file" : "Templates/vdns-mapping.json" }, "vnf-template" : { "type" : "artifact-template-velocity", "file" : "Templates/vnf-template.vtl" }, "vnf-mapping" : { "type" : "artifact-mapping-resource", "file" : "Templates/vnf-mapping.json" }, "vlb-template" : { "type" : "artifact-template-velocity", "file" : "Templates/vlb-template.vtl" }, "vlb-mapping" : { "type" : "artifact-mapping-resource", "file" : "Templates/vlb-mapping.json" } } }, "config-assign" : { "type" : "component-resource-resolution", "interfaces" : { "ResourceResolutionComponent" : { "operations" : { "process" : { "inputs" : { "resolution-key" : { "get_input" : "resolution-key" }, "store-result" : true, "artifact-prefix-names" : [ "baseconfig", "incremental-config" ] } } } } }, "artifacts" : { "baseconfig-template" : { "type" : "artifact-template-velocity", "file" : "Templates/baseconfig-template.vtl" }, "baseconfig-mapping" : { "type" : "artifact-mapping-resource", "file" : "Templates/baseconfig-mapping.json" }, "incremental-config-template" : { "type" : "artifact-template-velocity", "file" : "Templates/incremental-config-template.vtl" }, "incremental-config-mapping" : { "type" : "artifact-mapping-resource", "file" : "Templates/incremental-config-mapping.json" } } }, "netconf-device" : { "type" : "vnf-netconf-device", "capabilities" : { "netconf" : { "properties" : { "login-key" : "admin", "login-account" : "admin", "target-ip-address" : { "get_attribute" : [ "nf-account-collection", "", "assignment-params", "nf-params" ] }, "port-number" : 2831, "connection-time-out" : 5 } } } }, "config-deploy-process" : { "type" : "dg-generic", "properties" : { "content" : { "get_artifact" : [ "SELF", "dg-config-deploy-process" ] }, "dependency-node-templates" : [ "nf-account-collection", "execute" ] }, "artifacts" : { "dg-config-deploy-process" : { "type" : "artifact-directed-graph", "file" : "Plans/CONFIG_ConfigDeploy.xml" } } }, "nf-account-collection" : { "type" : "component-resource-resolution", "interfaces" : { "ResourceResolutionComponent" : { "operations" : { "process" : { "inputs" : { "artifact-prefix-names" : [ "nf-params" ] } } } } }, "artifacts" : { "nf-params-template" : { "type" : "artifact-template-velocity", "file" : "Templates/nf-params-template.vtl" }, "nf-params-mapping" : { "type" : "artifact-mapping-resource", "file" : "Templates/nf-params-mapping.json" } } }, "execute" : { "type" : "component-netconf-executor", "requirements" : { "netconf-connection" : { "capability" : "netconf", "node" : "netconf-device", "relationship" : "tosca.relationships.ConnectsTo" } }, "interfaces" : { "ComponentNetconfExecutor" : { "operations" : { "process" : { "inputs" : { "script-type" : "kotlin", "script-class-reference" : "org.onap.ccsdk.cds.blueprintsprocessor.services.execution.scripts.ConfigDeploy", "instance-dependencies" : [ ], "dynamic-properties" : "*config-deploy-properties" } } } } } } } } }