{ "tosca_definitions_version" : "controller_blueprint_1_0_0", "metadata" : { "template_author" : "Raj Gumma", "author-email" : "raj.gumma@est.tech", "user-groups" : "ADMIN, OPERATION", "template_name" : "PNF_CDS_RESTCONF", "template_version" : "1.0.0", "template_tags" : "PNF, Restconf, config, configuration, software upgrade" }, "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" : { "config-deploy-properties" : { "resolution-key" : { "get_input" : "resolution-key" } }, "precheck-properties" : { "resolution-key" : { "get_input" : "resolution-key" } }, "downloadNeSw-properties" : { "resolution-key" : { "get_input" : "resolution-key" } }, "activateNeSw-properties" : { "resolution-key" : { "get_input" : "resolution-key" } }, "postcheck-properties" : { "resolution-key" : { "get_input" : "resolution-key" } } }, "topology_template" : { "workflows" : { "config-assign" : { "steps" : { "activate-process" : { "description" : "Create a configlet", "target" : "config-assign", "activities" : [ { "call_operation" : "" } ] } }, "inputs" : { "resolution-key" : { "required" : true, "type" : "string" }, "store-result" : { "required" : true, "type" : "boolean" }, "config-assign-properties" : { "description" : "Dynamic PropertyDefinition for workflow(config-assign).", "required" : true, "type" : "dt-config-assign-properties" } } }, "config-deploy" : { "steps" : { "activate-process" : { "description" : "Send a configlet to the pnf", "target" : "config-deploy", "activities" : [ { "call_operation" : "" } ] } }, "inputs" : { "resolution-key" : { "required" : true, "type" : "string" }, "config-deploy-properties" : { "description" : "Dynamic PropertyDefinition for workflow(config-deploy).", "required" : true, "type" : "dt-config-deploy-properties" } } }, "precheck" : { "steps" : { "activate-process" : { "description" : "Check if pnf ready for sw upgrade", "target" : "precheck", "activities" : [ { "call_operation" : "" } ] } }, "inputs" : { "resolution-key" : { "required" : true, "type" : "string" }, "precheck-properties" : { "description" : "Dynamic PropertyDefinition for precheck workflow(software-upgrade).", "required" : true, "type" : "dt-precheck-properties" } } }, "downloadNeSw" : { "steps" : { "activate-process" : { "description" : "Trigger download new software for sw upgrade", "target" : "downloadNeSw", "activities" : [ { "call_operation" : "" } ] } }, "inputs" : { "resolution-key" : { "required" : true, "type" : "string" }, "downloadNeSw-properties" : { "description" : "Dynamic PropertyDefinition for downloadNeSw workflow(software-upgrade).", "required" : true, "type" : "dt-downloadNeSw-properties" } } }, "activateNeSw" : { "steps" : { "activate-process" : { "description" : "Trigger activation of target software version for pnf upgrade", "target" : "activateNeSw", "activities" : [ { "call_operation" : "" } ] } }, "inputs" : { "resolution-key" : { "required" : true, "type" : "string" }, "activateNeSw-properties" : { "description" : "Dynamic PropertyDefinition for activateNeSw workflow(software-upgrade).", "required" : true, "type" : "dt-activateNeSw-properties" } } }, "postcheck" : { "steps" : { "activate-process" : { "description" : "Check if pnf upgrade is completed", "target" : "postcheck", "activities" : [ { "call_operation" : "" } ] } }, "inputs" : { "resolution-key" : { "required" : true, "type" : "string" }, "postcheck-properties" : { "description" : "Dynamic PropertyDefinition for postcheck workflow(software-upgrade).", "required" : true, "type" : "dt-postcheck-properties" } } } }, "node_templates" : { "config-assign" : { "type" : "component-resource-resolution", "interfaces" : { "ResourceResolutionComponent" : { "operations" : { "process" : { "inputs" : { "resolution-key" : { "get_input" : "resolution-key" }, "store-result" : true, "artifact-prefix-names" : [ "config-assign" ] }, "outputs" : { "resource-assignment-params" : { "get_attribute" : [ "SELF", "assignment-params" ] }, "status" : "success" } } } } }, "artifacts" : { "config-assign-template" : { "type" : "artifact-template-velocity", "file" : "Templates/config-assign-restconf-configlet-template.vtl" }, "config-assign-mapping" : { "type" : "artifact-mapping-resource", "file" : "Definitions/config-assign-pnf-mapping.json" } } }, "config-deploy" : { "type" : "component-script-executor", "interfaces" : { "ComponentScriptExecutor" : { "operations" : { "process" : { "implementation" : { "primary" : "component-script", "timeout" : 180, "operation_host" : "SELF" }, "inputs" : { "script-type" : "kotlin", "script-class-reference" : "cba.pnf.config.aai.RestconfConfigDeploy", "dynamic-properties" : "*config-deploy-properties" }, "outputs" : { "response-data" : "", "status" : "success" } } } } }, "artifacts" : { "config-deploy-template" : { "type" : "artifact-template-velocity", "file" : "Templates/restconf-mount-template.vtl" }, "config-deploy-mapping" : { "type" : "artifact-mapping-resource", "file" : "Definitions/config-deploy-pnf-mapping.json" } } }, "precheck" : { "type" : "component-script-executor", "interfaces" : { "ComponentScriptExecutor" : { "operations" : { "process" : { "implementation" : { "primary" : "component-script", "timeout" : 180, "operation_host" : "SELF" }, "inputs" : { "script-type" : "kotlin", "script-class-reference" : "cba.pnf.swug.RestconfSoftwareUpgrade", "dynamic-properties" : "*precheck-properties" }, "outputs" : { "response-data" : "", "status" : "success" } } } } }, "artifacts" : { "mount-node-template" : { "type" : "artifact-template-velocity", "file" : "Templates/restconf-mount-template.vtl" }, "mount-node-mapping" : { "type" : "artifact-mapping-resource", "file" : "Definitions/pnf-software-upgrade-mapping.json" } } }, "downloadNeSw" : { "type" : "component-script-executor", "interfaces" : { "ComponentScriptExecutor" : { "operations" : { "process" : { "implementation" : { "primary" : "component-script", "timeout" : 180, "operation_host" : "SELF" }, "inputs" : { "script-type" : "kotlin", "script-class-reference" : "cba.pnf.swug.RestconfSoftwareUpgrade", "dynamic-properties" : "*downloadNeSw-properties" }, "outputs" : { "response-data" : "", "status" : "success" } } } } }, "artifacts" : { "mount-node-template" : { "type" : "artifact-template-velocity", "file" : "Templates/restconf-mount-template.vtl" }, "mount-node-mapping" : { "type" : "artifact-mapping-resource", "file" : "Definitions/pnf-software-upgrade-mapping.json" }, "configure-template" : { "type" : "artifact-template-velocity", "file" : "Templates/pnf-swug-config-template.vtl" }, "configure-mapping" : { "type" : "artifact-mapping-resource", "file" : "Definitions/pnf-software-upgrade-mapping.json" }, "download-ne-sw-template" : { "type" : "artifact-template-velocity", "file" : "Templates/pnf-swug-download-ne-sw-template.vtl" }, "download-ne-sw-mapping" : { "type" : "artifact-mapping-resource", "file" : "Definitions/pnf-software-upgrade-mapping.json" } } }, "activateNeSw" : { "type" : "component-script-executor", "interfaces" : { "ComponentScriptExecutor" : { "operations" : { "process" : { "implementation" : { "primary" : "component-script", "timeout" : 180, "operation_host" : "SELF" }, "inputs" : { "script-type" : "kotlin", "script-class-reference" : "cba.pnf.swug.RestconfSoftwareUpgrade", "dynamic-properties" : "*activateNeSw-properties" }, "outputs" : { "response-data" : "", "status" : "success" } } } } }, "artifacts" : { "mount-node-template" : { "type" : "artifact-template-velocity", "file" : "Templates/restconf-mount-template.vtl" }, "mount-node-mapping" : { "type" : "artifact-mapping-resource", "file" : "Definitions/pnf-software-upgrade-mapping.json" }, "configure-template" : { "type" : "artifact-template-velocity", "file" : "Templates/pnf-swug-config-template.vtl" }, "configure-mapping" : { "type" : "artifact-mapping-resource", "file" : "Definitions/pnf-software-upgrade-mapping.json" } } }, "postcheck" : { "type" : "component-script-executor", "interfaces" : { "ComponentScriptExecutor" : { "operations" : { "process" : { "implementation" : { "primary" : "component-script", "timeout" : 180, "operation_host" : "SELF" }, "inputs" : { "script-type" : "kotlin", "script-class-reference" : "cba.pnf.swug.RestconfSoftwareUpgrade", "dynamic-properties" : "*postcheck-properties" }, "outputs" : { "response-data" : "", "status" : "success" } } } } }, "artifacts" : { "mount-node-template" : { "type" : "artifact-template-velocity", "file" : "Templates/restconf-mount-template.vtl" }, "mount-node-mapping" : { "type" : "artifact-mapping-resource", "file" : "Definitions/pnf-software-upgrade-mapping.json" } } } } } }