diff options
author | vmuthukrishnan@aarnanetworks.com <vmuthukrishnan@aarnanetworks.com> | 2020-09-08 17:06:57 +0000 |
---|---|---|
committer | vmuthukrishnan@aarnanetworks.com <vmuthukrishnan@aarnanetworks.com> | 2020-09-08 17:07:19 +0000 |
commit | 4557a0e400de554ef3474bcd5d7c36a85b5be937 (patch) | |
tree | 882ced41c5b1fab1350a0274afd93f19a93c752f /components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions | |
parent | b708ee62df489337479bd00a4f0cd5b502d2f9c9 (diff) |
PNF demo blueprint
Change-Id: I830174d054fdd11fe8ebfbdeafe4abeb5b223dac
Issue-ID: CCSDK-2624
Signed-off-by: vmuthukrishnan@aarnanetworks.com <vmuthukrishnan@aarnanetworks.com>
Diffstat (limited to 'components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions')
7 files changed, 713 insertions, 0 deletions
diff --git a/components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions/artifact_types.json b/components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions/artifact_types.json new file mode 100644 index 000000000..da498e35e --- /dev/null +++ b/components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions/artifact_types.json @@ -0,0 +1,16 @@ +{ + "artifact_types" : { + "artifact-mapping-resource" : { + "description" : "Resource Mapping File used along with Configuration template", + "version" : "1.0.0", + "derived_from" : "tosca.artifacts.Implementation", + "file_ext" : [ "json" ] + }, + "artifact-template-velocity" : { + "description" : " Velocity Template used for Configuration", + "version" : "1.0.0", + "derived_from" : "tosca.artifacts.Implementation", + "file_ext" : [ "vtl" ] + } + } +}
\ No newline at end of file diff --git a/components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions/data_types.json b/components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions/data_types.json new file mode 100644 index 000000000..b95918518 --- /dev/null +++ b/components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions/data_types.json @@ -0,0 +1,162 @@ +{ + "data_types": { + "dt-config-assign-properties": { + "description": "Dynamic DataType definition for workflow(config-assign).", + "version": "1.0.0", + "properties": { + "netconf-server-port": { + "description": "", + "required": true, + "type": "string", + "status": "", + "constraints": [ + {} + ], + "entry_schema": { + "type": "" + } + }, + "pnf-ipv4-address": { + "description": "", + "required": true, + "type": "string", + "status": "", + "constraints": [ + {} + ], + "entry_schema": { + "type": "" + } + }, + "netconf-username": { + "description": "", + "required": true, + "type": "string", + "status": "", + "constraints": [ + {} + ], + "entry_schema": { + "type": "" + } + }, + "pnf-id": { + "description": "", + "required": true, + "type": "string", + "status": "", + "constraints": [ + {} + ], + "entry_schema": { + "type": "" + } + }, + "netconf-password": { + "description": "", + "required": true, + "type": "string", + "status": "", + "constraints": [ + {} + ], + "entry_schema": { + "type": "" + } + }, + "stream-count": { + "description": "", + "required": true, + "type": "integer", + "status": "", + "constraints": [ + {} + ], + "entry_schema": { + "type": "" + } + } + }, + "derived_from": "tosca.datatypes.Dynamic" + }, + "dt-config-deploy-properties": { + "description": "Dynamic DataType definition for workflow(config-assign).", + "version": "1.0.0", + "properties": { + "netconf-server-port": { + "description": "", + "required": true, + "type": "string", + "status": "", + "constraints": [ + {} + ], + "entry_schema": { + "type": "" + } + }, + "pnf-ipv4-address": { + "description": "", + "required": true, + "type": "string", + "status": "", + "constraints": [ + {} + ], + "entry_schema": { + "type": "" + } + }, + "netconf-username": { + "description": "", + "required": true, + "type": "string", + "status": "", + "constraints": [ + {} + ], + "entry_schema": { + "type": "" + } + }, + "pnf-id": { + "description": "", + "required": true, + "type": "string", + "status": "", + "constraints": [ + {} + ], + "entry_schema": { + "type": "" + } + }, + "netconf-password": { + "description": "", + "required": true, + "type": "string", + "status": "", + "constraints": [ + {} + ], + "entry_schema": { + "type": "" + } + }, + "stream-count": { + "description": "", + "required": true, + "type": "integer", + "status": "", + "constraints": [ + {} + ], + "entry_schema": { + "type": "" + } + } + }, + "derived_from": "tosca.datatypes.Dynamic" + } + } +}
\ No newline at end of file diff --git a/components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions/node_types.json b/components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions/node_types.json new file mode 100644 index 000000000..30d0749b2 --- /dev/null +++ b/components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions/node_types.json @@ -0,0 +1,229 @@ +{ + "node_types" : { + "component-resource-resolution" : { + "description" : "This is Resource Assignment Component API", + "version" : "1.0.0", + "attributes" : { + "assignment-params" : { + "description" : "Holds resolved template, resolution-summary or key-value", + "required" : true, + "type" : "string" + }, + "assignment-map" : { + "description" : "Holds resolved values for each artifact prefix eg. { vdns: { vnf-id: 123 } }", + "required" : true, + "type" : "map" + } + }, + "capabilities" : { + "component-node" : { + "type" : "tosca.capabilities.Node" + } + }, + "interfaces" : { + "ResourceResolutionComponent" : { + "operations" : { + "process" : { + "inputs" : { + "resolution-key" : { + "description" : "Key for service instance related correlation.", + "required" : false, + "type" : "string" + }, + "occurrence" : { + "description" : "Number of time to perform the resolution.", + "required" : false, + "type" : "integer", + "default" : 1 + }, + "store-result" : { + "description" : "Whether or not to store the output.", + "required" : false, + "type" : "boolean" + }, + "resource-type" : { + "description" : "Request type.", + "required" : false, + "type" : "string" + }, + "resolution-summary" : { + "description" : "Enable resolution-summary output", + "required" : false, + "type" : "boolean" + }, + "artifact-prefix-names" : { + "description" : "Template , Resource Assignment Artifact Prefix names", + "required" : true, + "type" : "list", + "entry_schema" : { + "type" : "string" + } + }, + "request-id" : { + "description" : "Request Id, Unique Id for the request.", + "required" : true, + "type" : "string" + }, + "resource-id" : { + "description" : "Resource Id.", + "required" : false, + "type" : "string" + }, + "action-name" : { + "description" : "Action Name of the process", + "required" : false, + "type" : "string" + }, + "dynamic-properties" : { + "description" : "Dynamic Json Content or DSL Json reference.", + "required" : false, + "type" : "json" + } + }, + "outputs" : { + "resource-assignment-params" : { + "required" : true, + "type" : "string" + }, + "resource-assignment-map" : { + "required" : true, + "type" : "string" + }, + "status" : { + "required" : true, + "type" : "string" + } + } + } + } + } + }, + "derived_from" : "tosca.nodes.Component" + }, + "component-script-executor" : { + "description" : "This is CLI Transaction Configuration Component API", + "version" : "1.0.0", + "attributes" : { + "response-data" : { + "required" : false, + "type" : "json" + } + }, + "capabilities" : { + "component-node" : { + "type" : "tosca.capabilities.Node" + } + }, + "interfaces" : { + "ComponentScriptExecutor" : { + "operations" : { + "process" : { + "inputs" : { + "script-type" : { + "description" : "Script type, kotlin type is supported", + "required" : true, + "type" : "string", + "constraints" : [ { + "valid_values" : [ "kotlin", "jython", "internal" ] + } ], + "default" : "internal" + }, + "script-class-reference" : { + "description" : "Kotlin Script class name or jython script name.", + "required" : true, + "type" : "string" + }, + "dynamic-properties" : { + "description" : "Dynamic Json Content or DSL Json reference.", + "required" : false, + "type" : "json" + } + }, + "outputs" : { + "response-data" : { + "description" : "Execution Response Data.", + "required" : false, + "type" : "string" + }, + "status" : { + "description" : "Status of the Component Execution ( success or failure )", + "required" : true, + "type" : "string" + } + } + } + } + } + }, + "derived_from" : "tosca.nodes.Component" + }, + "source-default" : { + "description" : "This is Default Resource Source Node Type", + "version" : "1.0.0", + "properties" : { }, + "derived_from" : "tosca.nodes.ResourceSource" + }, + "source-input" : { + "description" : "This is Input Resource Source Node Type", + "version" : "1.0.0", + "properties" : { }, + "derived_from" : "tosca.nodes.ResourceSource" + }, + "tosca.nodes.Component" : { + "description" : "This is default Component Node", + "version" : "1.0.0", + "derived_from" : "tosca.nodes.Root" + }, + "tosca.nodes.ResourceSource" : { + "description" : "TOSCA base type for Resource Sources", + "version" : "1.0.0", + "derived_from" : "tosca.nodes.Root" + }, + "tosca.nodes.Vnf" : { + "description" : "This is VNF Node Type", + "version" : "1.0.0", + "derived_from" : "tosca.nodes.Root" + }, + "vnf-netconf-device" : { + "description" : "This is VNF Device with Netconf Capability", + "version" : "1.0.0", + "capabilities" : { + "netconf" : { + "type" : "tosca.capabilities.Netconf", + "properties" : { + "login-key" : { + "required" : true, + "type" : "string", + "default" : "sdnc" + }, + "login-account" : { + "required" : true, + "type" : "string", + "default" : "sdnc-tacacs" + }, + "source" : { + "required" : false, + "type" : "string", + "default" : "npm" + }, + "target-ip-address" : { + "required" : true, + "type" : "string" + }, + "port-number" : { + "required" : true, + "type" : "integer", + "default" : 830 + }, + "connection-time-out" : { + "required" : false, + "type" : "integer", + "default" : 30 + } + } + } + }, + "derived_from" : "tosca.nodes.Vnf" + } + } +}
\ No newline at end of file diff --git a/components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions/pnf_netconf.json b/components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions/pnf_netconf.json new file mode 100644 index 000000000..57f408a41 --- /dev/null +++ b/components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions/pnf_netconf.json @@ -0,0 +1,198 @@ +{ + "tosca_definitions_version": "controller_blueprint_1_0_0", + "metadata": { + "template_author": "Aarna Services", + "author_email": "vmuthukrishnan@aarnanetworks.com", + "user_groups": "ADMIN, OPERATION", + "template_name": "pnf_netconf", + "template_version": "1.0.0", + "template_tags": "pnf_netconf", + "template_type": "DEFAULT" + }, + "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" + } + } + }, + "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": { + "imperative-workflow-step-1": { + "description": "execute restconf", + "target": "execute", + "activities": [ + { + "call_operation": "ComponentScriptExecutor.process" + } + ] + } + }, + "inputs": { + "resolution-key": { + "required": true, + "type": "string" + }, + "netconf-password": { + "required": true, + "type": "string" + }, + "netconf-username": { + "required": true, + "type": "string" + }, + "pnf-ipv4-address": { + "required": true, + "type": "string" + }, + "config-deploy-properties": { + "description": "Dynamic PropertyDefinition for workflow(config-assign).", + "required": true, + "type": "dt-config-assign-properties" + } + } + } + }, + "node_templates": { + "netconf-device": { + "type": "vnf-netconf-device", + "capabilities": { + "netconf": { + "properties": { + "login-key": { + "get_input": "netconf-password" + }, + "login-account": { + "get_input": "netconf-username" + }, + "target-ip-address": { + "get_input": "pnf-ipv4-address" + }, + "port-number": 830, + "connection-time-out": 60 + } + } + } + }, + "config-assign": { + "type": "component-resource-resolution", + "interfaces": { + "ResourceResolutionComponent": { + "operations": { + "process": { + "inputs": { + "resolution-key": { + "get_input": "resolution-key" + }, + "store-result": true, + "artifact-prefix-names": [ + "pnf", + "netconfrpc" + ] + }, + "outputs": { + "resource-assignment-params": { + "get_attribute": [ + "SELF", + "assignment-params" + ] + }, + "status": "success" + } + } + } + } + }, + "artifacts": { + "pnf-template": { + "type": "artifact-template-velocity", + "file": "Templates/pnf-template.vtl" + }, + "pnf-mapping": { + "type": "artifact-mapping-resource", + "file": "Templates/pnf-mapping.json" + }, + "netconfrpc-template": { + "type": "artifact-template-velocity", + "file": "Templates/netconfrpc-template.vtl" + }, + "netconfrpc-mapping": { + "type": "artifact-mapping-resource", + "file": "Templates/netconfrpc-mapping.json" + } + } + }, + "execute": { + "type": "component-script-executor", + "requirements": { + "netconf-connection": { + "capability": "netconf", + "node": "netconf-device", + "relationship": "tosca.relationships.ConnectsTo" + } + }, + "interfaces": { + "ComponentScriptExecutor": { + "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" + } + } + } + } + } + } + } + } +} diff --git a/components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions/policy_types.json b/components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions/policy_types.json new file mode 100644 index 000000000..1e44cc70a --- /dev/null +++ b/components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions/policy_types.json @@ -0,0 +1,3 @@ +{ + "policy_types" : { } +}
\ No newline at end of file diff --git a/components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions/relationship_types.json b/components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions/relationship_types.json new file mode 100644 index 000000000..4ddd7a57c --- /dev/null +++ b/components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions/relationship_types.json @@ -0,0 +1,3 @@ +{ + "relationship_types" : { } +}
\ No newline at end of file diff --git a/components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions/resources_definition_types.json b/components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions/resources_definition_types.json new file mode 100644 index 000000000..5405dfccf --- /dev/null +++ b/components/model-catalog/blueprint-model/service-blueprint/PNF_DEMO/Definitions/resources_definition_types.json @@ -0,0 +1,102 @@ +{ + "netconf-password" : { + "tags" : "netconf-password", + "name" : "netconf-password", + "property" : { + "description" : "netconf-password string attribute", + "type" : "string" + }, + "group" : "default", + "updated-by" : "Aarna service <vmuthukrishnan@aarnanetworks.com>", + "sources" : { + "input" : { + "type" : "source-input", + "properties" : { } + } + } + }, + "netconf-server-port" : { + "tags" : "netconf-server-port", + "name" : "netconf-server-port", + "property" : { + "description" : "netconf-server-port string attribute", + "type" : "string" + }, + "group" : "default", + "updated-by" : "Aarna service <vmuthukrishnan@aarnanetworks.com>", + "sources" : { + "input" : { + "type" : "source-input", + "properties" : { } + } + } + }, + "netconf-username" : { + "tags" : "netconf-username", + "name" : "netconf-username", + "property" : { + "description" : "netconf-username string attribute", + "type" : "string" + }, + "group" : "default", + "updated-by" : "Aarna service <vmuthukrishnan@aarnanetworks.com>", + "sources" : { + "input" : { + "type" : "source-input", + "properties" : { } + } + } + }, + "pnf-id" : { + "tags" : "pnf-id", + "name" : "pnf-id", + "property" : { + "description" : "pnf-id string attribute", + "type" : "string" + }, + "group" : "default", + "updated-by" : "Aarna service <vmuthukrishnan@aarnanetworks.com>", + "sources" : { + "input" : { + "type" : "source-input", + "properties" : { } + } + } + }, + "pnf-ipv4-address" : { + "tags" : "pnf-ipv4-address", + "name" : "pnf-ipv4-address", + "property" : { + "description" : "pnf-ipv4-address string attribute", + "type" : "string" + }, + "group" : "default", + "updated-by" : "Aarna service <vmuthukrishnan@aarnanetworks.com>", + "sources" : { + "input" : { + "type" : "source-input", + "properties" : { } + } + } + }, + "stream-count" : { + "tags" : "stream-count", + "name" : "stream-count", + "property" : { + "description" : "stream-count string attribute", + "type" : "integer" + }, + "group" : "default", + "updated-by" : "Aarna service <vmuthukrishnan@aarnanetworks.com>", + "sources" : { + "input" : { + "type" : "source-default", + "properties" : { } + }, + "default" : { + "type" : "source-default", + "properties" : { } + } + } + } +}
\ No newline at end of file |