diff options
Diffstat (limited to 'ms/controllerblueprints/modules')
5 files changed, 985 insertions, 927 deletions
diff --git a/ms/controllerblueprints/modules/pom.xml b/ms/controllerblueprints/modules/pom.xml index 887d02331..b38b6e6aa 100644 --- a/ms/controllerblueprints/modules/pom.xml +++ b/ms/controllerblueprints/modules/pom.xml @@ -23,7 +23,7 @@ <parent>
<groupId>org.onap.ccsdk.apps.controllerblueprints</groupId>
<artifactId>parent</artifactId>
- <version>0.3.0-SNAPSHOT</version>
+ <version>0.3.1-SNAPSHOT</version>
<relativePath>../parent</relativePath>
</parent>
<artifactId>modules</artifactId>
diff --git a/ms/controllerblueprints/modules/service/pom.xml b/ms/controllerblueprints/modules/service/pom.xml index e95c1f739..add4ad15a 100644 --- a/ms/controllerblueprints/modules/service/pom.xml +++ b/ms/controllerblueprints/modules/service/pom.xml @@ -25,7 +25,7 @@ <parent>
<groupId>org.onap.ccsdk.apps.controllerblueprints</groupId>
<artifactId>modules</artifactId>
- <version>0.3.0-SNAPSHOT</version>
+ <version>0.3.1-SNAPSHOT</version>
</parent>
<artifactId>service</artifactId>
<name>Controller Blueprints Service</name>
diff --git a/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/domain/ConfigModelSearch.java b/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/domain/ConfigModelSearch.java index 6ec39ab55..b6f0f0019 100644 --- a/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/domain/ConfigModelSearch.java +++ b/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/domain/ConfigModelSearch.java @@ -49,7 +49,7 @@ public class ConfigModelSearch implements Serializable { @Column(name = "internal_version")
private Integer internalVersion;
- @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "MM/dd/yyyy KK:mm:ss a Z")
+ @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'")
@LastModifiedDate
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "creation_date")
diff --git a/ms/controllerblueprints/modules/service/src/test/java/org/onap/ccsdk/apps/controllerblueprints/service/validator/ModelTypeValidatorTest.java b/ms/controllerblueprints/modules/service/src/test/java/org/onap/ccsdk/apps/controllerblueprints/service/validator/ModelTypeValidatorTest.java new file mode 100644 index 000000000..a5eb661af --- /dev/null +++ b/ms/controllerblueprints/modules/service/src/test/java/org/onap/ccsdk/apps/controllerblueprints/service/validator/ModelTypeValidatorTest.java @@ -0,0 +1,58 @@ +/* + * Copyright © 2018 IBM. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.onap.ccsdk.apps.controllerblueprints.service.validator; + +import static org.junit.Assert.*; + +import org.junit.*; +import org.onap.ccsdk.apps.controllerblueprints.service.validator.ModelTypeValidator; +import org.onap.ccsdk.apps.controllerblueprints.service.domain.ModelType; +import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintException; + +import com.fasterxml.jackson.databind.JsonNode; + +public class ModelTypeValidatorTest { + + @Before + public void setup(){ + ModelTypeValidator modelTypeValidator; + } + + @Test + public void testGetValidModelDefinitionType_definitionContentNULL() throws Exception{ + String definitionType=null; + JsonNode definitionContent=null; + boolean valid= ModelTypeValidator.validateModelTypeDefinition(definitionType, definitionContent); + Assert.assertTrue(valid); + + } + + @Test(expected=BluePrintException.class) + public void testvalidateModelType() throws Exception{ + ModelType modelType = new ModelType(); + modelType.setDefinitionType(""); + modelType.setDerivedFrom(""); + modelType.setDescription(""); + JsonNode definitionContent=null; + modelType.setDefinition(definitionContent); + modelType.setModelName(""); + modelType.setVersion(""); + modelType.setTags(""); + modelType.setUpdatedBy(""); + ModelTypeValidator.validateModelType(modelType); + } +} diff --git a/ms/controllerblueprints/modules/service/src/test/resources/enhance/enhanced-template.json b/ms/controllerblueprints/modules/service/src/test/resources/enhance/enhanced-template.json index 531d756be..d49ab8fec 100644 --- a/ms/controllerblueprints/modules/service/src/test/resources/enhance/enhanced-template.json +++ b/ms/controllerblueprints/modules/service/src/test/resources/enhance/enhanced-template.json @@ -1,925 +1,925 @@ -{
- "metadata" : {
- "template_author" : "Brinda Santh",
- "template_name" : "enhance-template",
- "template_version" : "1.0.0",
- "template_tags" : "brinda, VPE",
- "service-type" : "Sample Service",
- "release" : "1806",
- "vnf-type" : "VPE"
- },
- "tosca_definitions_version" : "controller_blueprint_1_0_0",
- "artifact_types" : { },
- "data_types" : {
- "dt-v4-aggregate" : {
- "description" : "This is dt-v4-aggregate Data Type",
- "version" : "1.0.0",
- "properties" : {
- "ipv4-address" : {
- "required" : true,
- "type" : "string"
- },
- "ipv4-plen" : {
- "required" : false,
- "type" : "integer"
- }
- },
- "derived_from" : "tosca.datatypes.Root"
- },
- "dt-license-key" : {
- "description" : "This is dt-plicense-key Data Type",
- "version" : "1.0.0",
- "properties" : {
- "license-key" : {
- "required" : true,
- "type" : "string"
- }
- },
- "derived_from" : "tosca.datatypes.Root"
- },
- "datatype-resource-assignment" : {
- "description" : "This is Resource Assignment Data Type",
- "version" : "1.0.0",
- "properties" : {
- "property" : {
- "required" : true,
- "type" : "datatype-property"
- },
- "input-param" : {
- "required" : true,
- "type" : "boolean"
- },
- "dictionary-name" : {
- "required" : false,
- "type" : "string"
- },
- "dictionary-source" : {
- "required" : false,
- "type" : "string"
- },
- "dependencies" : {
- "required" : true,
- "type" : "list",
- "entry_schema" : {
- "type" : "string"
- }
- },
- "status" : {
- "required" : false,
- "type" : "string"
- },
- "message" : {
- "required" : false,
- "type" : "string"
- },
- "updated-date" : {
- "required" : false,
- "type" : "string"
- },
- "updated-by" : {
- "required" : false,
- "type" : "string"
- }
- },
- "derived_from" : "tosca.datatypes.Root"
- },
- "datatype-property" : {
- "description" : "This is Entry point Input Data Type, which is dynamic datatype, The parameter names will be populated during the Design time for each inputs",
- "version" : "1.0.0",
- "properties" : {
- "type" : {
- "required" : true,
- "type" : "string"
- },
- "description" : {
- "required" : false,
- "type" : "string"
- },
- "required" : {
- "required" : false,
- "type" : "boolean"
- },
- "default" : {
- "required" : false,
- "type" : "string"
- },
- "entry_schema" : {
- "required" : false,
- "type" : "string"
- }
- },
- "derived_from" : "tosca.datatypes.Root"
- },
- "dt-resource-assignment-request" : {
- "description" : "This is Dynamic Data type definition generated from resource mapping for the config template name base-config-template.",
- "version" : "1.0.0",
- "properties" : {
- "hostname" : {
- "required" : true,
- "type" : "string"
- },
- "licenses" : {
- "required" : true,
- "type" : "list",
- "entry_schema" : {
- "type" : "dt-license-key"
- }
- },
- "rs-db-source" : {
- "required" : true,
- "type" : "string"
- },
- "service" : {
- "required" : true,
- "type" : "string"
- },
- "service-instance-id" : {
- "required" : true,
- "type" : "string"
- },
- "mdsal-source" : {
- "description" : "",
- "required" : true,
- "type" : "list",
- "entry_schema" : {
- "type" : "dt-v4-aggregate"
- }
- }
- },
- "derived_from" : "tosca.datatypes.Dynamic"
- }
- },
- "node_types" : {
- "dg-resource-assignment" : {
- "description" : "This is Resource Assignment Directed Graph",
- "version" : "1.0.0",
- "properties" : {
- "mode" : {
- "required" : false,
- "type" : "string",
- "default" : "sync"
- },
- "version" : {
- "required" : false,
- "type" : "string",
- "default" : "LATEST"
- },
- "is-start-flow" : {
- "required" : false,
- "type" : "boolean",
- "default" : false
- }
- },
- "capabilities" : {
- "dg-node" : {
- "type" : "tosca.capabilities.Node"
- }
- },
- "requirements" : {
- "component-dependency" : {
- "capability" : "component-node",
- "node" : "component-resource-assignment",
- "relationship" : "tosca.relationships.DependsOn"
- }
- },
- "interfaces" : {
- "CONFIG" : {
- "operations" : {
- "ResourceAssignment" : {
- "inputs" : {
- "params" : {
- "required" : false,
- "type" : "list",
- "entry_schema" : {
- "type" : "datatype-property"
- }
- }
- }
- }
- }
- }
- },
- "derived_from" : "tosca.nodes.DG"
- },
- "tosca.nodes.Component" : {
- "description" : "This is default Component Node",
- "version" : "1.0.0",
- "derived_from" : "tosca.nodes.Root"
- },
- "artifact-config-template" : {
- "description" : "This is Configuration Velocity Template",
- "version" : "1.0.0",
- "properties" : {
- "action-names" : {
- "required" : true,
- "type" : "list",
- "entry_schema" : {
- "type" : "string"
- }
- }
- },
- "capabilities" : {
- "content" : {
- "type" : "tosca.capabilities.Content",
- "properties" : {
- "content" : {
- "required" : true,
- "type" : "string"
- }
- }
- },
- "mapping" : {
- "type" : "tosca.capabilities.Mapping",
- "properties" : {
- "mapping" : {
- "required" : false,
- "type" : "list",
- "entry_schema" : {
- "type" : "datatype-resource-assignment"
- }
- }
- }
- }
- },
- "derived_from" : "tosca.nodes.Artifact"
- },
- "tosca.nodes.Vnf" : {
- "description" : "This is VNF Node Type",
- "version" : "1.0.0",
- "derived_from" : "tosca.nodes.Root"
- },
- "tosca.nodes.Artifact" : {
- "description" : "This is Deprecated Artifact Node Type.",
- "version" : "1.0.0",
- "derived_from" : "tosca.nodes.Root"
- },
- "dg-activate-netconf" : {
- "description" : "This is Download Netconf Directed Graph",
- "version" : "1.0.0",
- "properties" : {
- "mode" : {
- "required" : false,
- "type" : "string",
- "default" : "sync"
- },
- "version" : {
- "required" : false,
- "type" : "string",
- "default" : "LATEST"
- },
- "is-start-flow" : {
- "required" : false,
- "type" : "boolean",
- "default" : false
- }
- },
- "capabilities" : {
- "dg-node" : {
- "type" : "tosca.capabilities.Node"
- }
- },
- "requirements" : {
- "component-dependency" : {
- "capability" : "component-node",
- "node" : "component-netconf-executor",
- "relationship" : "tosca.relationships.DependsOn"
- }
- },
- "interfaces" : {
- "CONFIG" : {
- "operations" : {
- "ActivateNetconf" : {
- "inputs" : {
- "params" : {
- "required" : false,
- "type" : "list",
- "entry_schema" : {
- "type" : "datatype-property"
- }
- }
- }
- }
- }
- }
- },
- "derived_from" : "tosca.nodes.DG"
- },
- "source-input" : {
- "description" : "This is Input Resource Source Node Type",
- "version" : "1.0.0",
- "properties" : {
- "key" : {
- "required" : false,
- "type" : "string"
- },
- "key-dependencies" : {
- "required" : true,
- "type" : "list",
- "entry_schema" : {
- "type" : "string"
- }
- }
- },
- "derived_from" : "tosca.nodes.ResourceSource"
- },
- "tosca.nodes.ResourceSource" : {
- "description" : "TOSCA base type for Resource Sources",
- "version" : "1.0.0",
- "derived_from" : "tosca.nodes.Root"
- },
- "component-resource-assignment" : {
- "description" : "This is Resource Assignment Component API",
- "version" : "1.0.0",
- "capabilities" : {
- "component-node" : {
- "type" : "tosca.capabilities.Node"
- }
- },
- "interfaces" : {
- "org-onap-ccsdk-config-assignment-service-ConfigAssignmentNode" : {
- "operations" : {
- "process" : {
- "inputs" : {
- "template-name" : {
- "description" : "Service Template Name.",
- "required" : true,
- "type" : "string"
- },
- "template-version" : {
- "description" : "Service Template Version.",
- "required" : true,
- "type" : "string"
- },
- "resource-type" : {
- "description" : "Request type.",
- "required" : true,
- "type" : "string"
- },
- "template-names" : {
- "description" : "Name of the artifact Node Templates, to get the template Content.",
- "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" : true,
- "type" : "string"
- },
- "action-name" : {
- "description" : "Action Name of the process",
- "required" : true,
- "type" : "string"
- }
- },
- "outputs" : {
- "resource-assignment-params" : {
- "required" : true,
- "type" : "string"
- },
- "status" : {
- "required" : true,
- "type" : "string"
- }
- }
- }
- }
- }
- },
- "derived_from" : "tosca.nodes.Component"
- },
- "tosca.nodes.DG" : {
- "description" : "This is Directed Graph Node Type",
- "version" : "1.0.0",
- "derived_from" : "tosca.nodes.Root"
- },
- "source-db" : {
- "description" : "This is Database Resource Source Node Type",
- "version" : "1.0.0",
- "properties" : {
- "type" : {
- "required" : true,
- "type" : "string",
- "constraints" : [ {
- "valid_values" : [ "SQL", "PLSQL" ]
- } ]
- },
- "query" : {
- "required" : true,
- "type" : "string"
- },
- "input-key-mapping" : {
- "required" : false,
- "type" : "map",
- "entry_schema" : {
- "type" : "string"
- }
- },
- "output-key-mapping" : {
- "required" : false,
- "type" : "map",
- "entry_schema" : {
- "type" : "string"
- }
- },
- "key-dependencies" : {
- "required" : true,
- "type" : "list",
- "entry_schema" : {
- "type" : "string"
- }
- }
- },
- "derived_from" : "tosca.nodes.ResourceSource"
- },
- "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" : true,
- "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"
- },
- "source-rest" : {
- "description" : "This is Rest Resource Source Node Type",
- "version" : "1.0.0",
- "properties" : {
- "type" : {
- "required" : false,
- "type" : "string",
- "constraints" : [ {
- "valid_values" : [ "JSON" ]
- } ],
- "default" : "JSON"
- },
- "url-path" : {
- "required" : true,
- "type" : "string"
- },
- "path" : {
- "required" : true,
- "type" : "string"
- },
- "expression-type" : {
- "required" : false,
- "type" : "string",
- "constraints" : [ {
- "valid_values" : [ "JSON_PATH", "JSON_POINTER" ]
- } ],
- "default" : "JSON_PATH"
- },
- "input-key-mapping" : {
- "required" : false,
- "type" : "map",
- "entry_schema" : {
- "type" : "string"
- }
- },
- "output-key-mapping" : {
- "required" : false,
- "type" : "map",
- "entry_schema" : {
- "type" : "string"
- }
- },
- "key-dependencies" : {
- "required" : true,
- "type" : "list",
- "entry_schema" : {
- "type" : "string"
- }
- }
- },
- "derived_from" : "tosca.nodes.ResourceSource"
- },
- "component-netconf-executor" : {
- "description" : "This is Netconf Transaction Configuration Component API",
- "version" : "1.0.0",
- "capabilities" : {
- "component-node" : {
- "type" : "tosca.capabilities.Node"
- }
- },
- "requirements" : {
- "netconf-connection" : {
- "capability" : "netconf",
- "node" : "vnf-netconf-device",
- "relationship" : "tosca.relationships.ConnectsTo"
- }
- },
- "interfaces" : {
- "org-openecomp-sdnc-netconf-adaptor-service-NetconfExecutorNode" : {
- "operations" : {
- "process" : {
- "inputs" : {
- "request-id" : {
- "description" : "Request Id used to store the generated configuration, in the database along with the template-name",
- "required" : true,
- "type" : "string"
- },
- "template-name" : {
- "description" : "Service Template Name",
- "required" : true,
- "type" : "string"
- },
- "template-version" : {
- "description" : "Service Template Version",
- "required" : true,
- "type" : "string"
- },
- "action-name" : {
- "description" : "Action Name to get from Database, Either (message & mask-info ) or ( resource-id & resource-type & action-name & template-name ) should be present. Message will be given higest priority",
- "required" : false,
- "type" : "string"
- },
- "resource-type" : {
- "description" : "Resource Type to get from Database, Either (message & mask-info ) or( resource-id & resource-type & action-name & template-name ) should be present. Message will be given higest priority",
- "required" : false,
- "type" : "string"
- },
- "resource-id" : {
- "description" : "Resource Id to get from Database, Either (message & mask-info ) or ( resource-id & resource-type & action-name & template-name ) should be present. Message will be given higest priority",
- "required" : false,
- "type" : "string"
- },
- "reservation-id" : {
- "description" : "Reservation Id used to send to NPM",
- "required" : false,
- "type" : "string"
- },
- "execution-script" : {
- "description" : "Python Script to Execute for this Component action, It should refer any one of Prython Artifact Definition for this Node Template.",
- "required" : true,
- "type" : "string"
- }
- },
- "outputs" : {
- "response-data" : {
- "description" : "Execution Response Data in JSON format.",
- "required" : false,
- "type" : "string"
- },
- "status" : {
- "description" : "Status of the Component Execution ( success or failure )",
- "required" : true,
- "type" : "string"
- }
- }
- }
- }
- }
- },
- "derived_from" : "tosca.nodes.Component"
- }
- },
- "topology_template" : {
- "inputs" : {
- "request-id" : {
- "required" : true,
- "type" : "string"
- },
- "service-instance-id" : {
- "required" : true,
- "type" : "string"
- },
- "scope-type" : {
- "required" : true,
- "type" : "string"
- },
- "action-name" : {
- "required" : true,
- "type" : "string"
- },
- "hostname" : {
- "required" : true,
- "type" : "string"
- },
- "resource-assignment-request" : {
- "description" : "This is Dynamic Data type for the receipe resource-assignment-action.",
- "required" : false,
- "type" : "dt-resource-assignment-request"
- }
- },
- "node_templates" : {
- "vpe-netconf-device" : {
- "type" : "vnf-netconf-device",
- "capabilities" : {
- "netconf" : {
- "properties" : {
- "login-key" : "sdnc",
- "login-account" : "sndc-local",
- "source" : "local",
- "target-ip-address" : {
- "get_attribute" : [ "SELF", "lo0-local-ipv4-address" ]
- },
- "port-number" : 22,
- "connection-time-out" : 30
- }
- }
- }
- },
- "activate-netconf-component" : {
- "type" : "component-netconf-executor",
- "capabilities" : {
- "component-node" : { }
- },
- "requirements" : {
- "netconf-connection" : {
- "capability" : "netconf",
- "node" : "vpe-netconf-device",
- "relationship" : "tosca.relationships.ConnectsTo"
- }
- },
- "interfaces" : {
- "org-openecomp-sdnc-netconf-adaptor-service-NetconfExecutorNode" : {
- "operations" : {
- "process" : {
- "implementation" : {
- "primary" : "file://netconf_adaptor/DefaultBaseLicenceConfig.py"
- },
- "inputs" : {
- "action-name" : {
- "get_input" : "action-name"
- },
- "template-name" : {
- "get_input" : "template_name"
- },
- "template-version" : {
- "get_input" : "template_version"
- },
- "resource-type" : "vnf-type",
- "request-id" : {
- "get_input" : "request-id"
- },
- "resource-id" : {
- "get_input" : "hostname"
- },
- "execution-script" : "execution-script"
- },
- "outputs" : {
- "response-data" : {
- "get_attribute" : [ "SELF", "netconf-executor-baseconfig.response-data" ]
- },
- "status" : {
- "get_attribute" : [ "SELF", "netconf-executor-baseconfig.status" ]
- }
- }
- }
- }
- }
- }
- },
- "resource-assignment-ra-component" : {
- "type" : "component-resource-assignment",
- "capabilities" : {
- "component-node" : { }
- },
- "interfaces" : {
- "org-onap-ccsdk-config-assignment-service-ConfigAssignmentNode" : {
- "operations" : {
- "process" : {
- "inputs" : {
- "template-names" : [ "base-config-template", "licence-template" ],
- "action-name" : {
- "get_input" : "action-name"
- },
- "template-name" : {
- "get_input" : "template_name"
- },
- "template-version" : {
- "get_input" : "template-version"
- },
- "resource-type" : "vnf-type",
- "request-id" : {
- "get_input" : "request-id"
- },
- "resource-id" : {
- "get_input" : "hostname"
- }
- },
- "outputs" : {
- "resource-assignment-params" : "success",
- "status" : "status"
- }
- }
- }
- }
- }
- },
- "resource-assignment-action" : {
- "type" : "dg-resource-assignment",
- "properties" : {
- "mode" : "sync",
- "version" : "LATEST",
- "is-start-flow" : false
- },
- "capabilities" : {
- "dg-node" : { }
- },
- "requirements" : {
- "component-dependency" : {
- "capability" : "component-node",
- "node" : "resource-assignment-ra-component",
- "relationship" : "tosca.relationships.DependsOn"
- }
- },
- "interfaces" : {
- "CONFIG" : {
- "operations" : {
- "ResourceAssignment" : {
- "inputs" : {
- "params" : [ ]
- }
- }
- }
- }
- }
- },
- "activate-action" : {
- "type" : "dg-activate-netconf",
- "properties" : {
- "mode" : "sync",
- "version" : "LATEST",
- "is-start-flow" : false
- },
- "capabilities" : {
- "dg-node" : { }
- },
- "requirements" : {
- "component-dependency" : {
- "capability" : "component-node",
- "node" : "activate-netconf-component",
- "relationship" : "tosca.relationships.DependsOn"
- }
- },
- "interfaces" : {
- "CONFIG" : {
- "operations" : {
- "ActivateNetconf" : {
- "inputs" : {
- "params" : [ ]
- }
- }
- }
- }
- }
- },
- "base-config-template" : {
- "type" : "artifact-config-template",
- "properties" : {
- "action-names" : [ "resource-assignment-action" ]
- },
- "capabilities" : {
- "content" : {
- "properties" : {
- "content" : "db://base-config-template"
- }
- },
- "mapping" : {
- "properties" : {
- "mapping" : [ {
- "name" : "rs-db-source",
- "property" : {
- "required" : true,
- "type" : "string"
- },
- "input-param" : false,
- "dictionary-name" : "sample-db-source",
- "dictionary-source" : "db",
- "dependencies" : [ "hostname" ],
- "version" : 0
- }, {
- "name" : "mdsal-source",
- "property" : {
- "description" : "",
- "required" : true,
- "type" : "list",
- "entry_schema" : {
- "type" : "dt-v4-aggregate"
- }
- },
- "input-param" : false,
- "dictionary-name" : "sample-mdsal-source",
- "dictionary-source" : "mdsal",
- "dependencies" : [ "service-instance-id" ],
- "version" : 0
- }, {
- "name" : "hostname",
- "property" : {
- "required" : true,
- "type" : "string"
- },
- "dictionary-name" : "hostname",
- "dictionary-source" : "input",
- "version" : 0,
- "input-param" : false
- }, {
- "name" : "service",
- "property" : {
- "required" : true,
- "type" : "string"
- },
- "dictionary-name" : "service",
- "dictionary-source" : "input",
- "version" : 0,
- "input-param" : false
- }, {
- "name" : "service-instance-id",
- "property" : {
- "required" : true,
- "type" : "string"
- },
- "dictionary-name" : "service-instance-id",
- "dictionary-source" : "input",
- "version" : 0,
- "input-param" : false
- } ]
- }
- }
- }
- },
- "licence-template" : {
- "type" : "artifact-config-template",
- "properties" : {
- "action-names" : [ "resource-assignment-action" ]
- },
- "capabilities" : {
- "content" : {
- "properties" : {
- "content" : "db://licence-template"
- }
- },
- "mapping" : {
- "properties" : {
- "mapping" : [ {
- "name" : "licenses",
- "property" : {
- "required" : true,
- "type" : "list",
- "entry_schema" : {
- "type" : "dt-license-key"
- }
- },
- "input-param" : false,
- "dictionary-name" : "sample-licenses",
- "dictionary-source" : "mdsal",
- "dependencies" : [ "service-instance-id" ],
- "version" : 0
- }, {
- "name" : "service-instance-id",
- "property" : {
- "required" : true,
- "type" : "string"
- },
- "dictionary-name" : "service-instance-id",
- "dictionary-source" : "input",
- "version" : 0,
- "input-param" : false
- } ]
- }
- }
- }
- }
- }
- }
+{ + "metadata" : { + "template_author" : "Brinda Santh", + "template_name" : "enhance-template", + "template_version" : "1.0.0", + "template_tags" : "brinda, VPE", + "service-type" : "Sample Service", + "release" : "1806", + "vnf-type" : "VPE" + }, + "tosca_definitions_version" : "controller_blueprint_1_0_0", + "artifact_types" : { }, + "data_types" : { + "dt-v4-aggregate" : { + "description" : "This is dt-v4-aggregate Data Type", + "version" : "1.0.0", + "properties" : { + "ipv4-address" : { + "required" : true, + "type" : "string" + }, + "ipv4-plen" : { + "required" : false, + "type" : "integer" + } + }, + "derived_from" : "tosca.datatypes.Root" + }, + "dt-license-key" : { + "description" : "This is dt-plicense-key Data Type", + "version" : "1.0.0", + "properties" : { + "license-key" : { + "required" : true, + "type" : "string" + } + }, + "derived_from" : "tosca.datatypes.Root" + }, + "datatype-resource-assignment" : { + "description" : "This is Resource Assignment Data Type", + "version" : "1.0.0", + "properties" : { + "property" : { + "required" : true, + "type" : "datatype-property" + }, + "input-param" : { + "required" : true, + "type" : "boolean" + }, + "dictionary-name" : { + "required" : false, + "type" : "string" + }, + "dictionary-source" : { + "required" : false, + "type" : "string" + }, + "dependencies" : { + "required" : true, + "type" : "list", + "entry_schema" : { + "type" : "string" + } + }, + "status" : { + "required" : false, + "type" : "string" + }, + "message" : { + "required" : false, + "type" : "string" + }, + "updated-date" : { + "required" : false, + "type" : "string" + }, + "updated-by" : { + "required" : false, + "type" : "string" + } + }, + "derived_from" : "tosca.datatypes.Root" + }, + "datatype-property" : { + "description" : "This is Entry point Input Data Type, which is dynamic datatype, The parameter names will be populated during the Design time for each inputs", + "version" : "1.0.0", + "properties" : { + "type" : { + "required" : true, + "type" : "string" + }, + "description" : { + "required" : false, + "type" : "string" + }, + "required" : { + "required" : false, + "type" : "boolean" + }, + "default" : { + "required" : false, + "type" : "string" + }, + "entry_schema" : { + "required" : false, + "type" : "string" + } + }, + "derived_from" : "tosca.datatypes.Root" + }, + "dt-resource-assignment-request" : { + "description" : "This is Dynamic Data type definition generated from resource mapping for the config template name base-config-template.", + "version" : "1.0.0", + "properties" : { + "hostname" : { + "required" : true, + "type" : "string" + }, + "licenses" : { + "required" : true, + "type" : "list", + "entry_schema" : { + "type" : "dt-license-key" + } + }, + "rs-db-source" : { + "required" : true, + "type" : "string" + }, + "service" : { + "required" : true, + "type" : "string" + }, + "service-instance-id" : { + "required" : true, + "type" : "string" + }, + "mdsal-source" : { + "description" : "", + "required" : true, + "type" : "list", + "entry_schema" : { + "type" : "dt-v4-aggregate" + } + } + }, + "derived_from" : "tosca.datatypes.Dynamic" + } + }, + "node_types" : { + "dg-resource-assignment" : { + "description" : "This is Resource Assignment Directed Graph", + "version" : "1.0.0", + "properties" : { + "mode" : { + "required" : false, + "type" : "string", + "default" : "sync" + }, + "version" : { + "required" : false, + "type" : "string", + "default" : "LATEST" + }, + "is-start-flow" : { + "required" : false, + "type" : "boolean", + "default" : false + } + }, + "capabilities" : { + "dg-node" : { + "type" : "tosca.capabilities.Node" + } + }, + "requirements" : { + "component-dependency" : { + "capability" : "component-node", + "node" : "component-resource-assignment", + "relationship" : "tosca.relationships.DependsOn" + } + }, + "interfaces" : { + "CONFIG" : { + "operations" : { + "ResourceAssignment" : { + "inputs" : { + "params" : { + "required" : false, + "type" : "list", + "entry_schema" : { + "type" : "datatype-property" + } + } + } + } + } + } + }, + "derived_from" : "tosca.nodes.DG" + }, + "tosca.nodes.Component" : { + "description" : "This is default Component Node", + "version" : "1.0.0", + "derived_from" : "tosca.nodes.Root" + }, + "artifact-config-template" : { + "description" : "This is Configuration Velocity Template", + "version" : "1.0.0", + "properties" : { + "action-names" : { + "required" : true, + "type" : "list", + "entry_schema" : { + "type" : "string" + } + } + }, + "capabilities" : { + "content" : { + "type" : "tosca.capabilities.Content", + "properties" : { + "content" : { + "required" : true, + "type" : "string" + } + } + }, + "mapping" : { + "type" : "tosca.capabilities.Mapping", + "properties" : { + "mapping" : { + "required" : false, + "type" : "list", + "entry_schema" : { + "type" : "datatype-resource-assignment" + } + } + } + } + }, + "derived_from" : "tosca.nodes.Artifact" + }, + "tosca.nodes.Vnf" : { + "description" : "This is VNF Node Type", + "version" : "1.0.0", + "derived_from" : "tosca.nodes.Root" + }, + "tosca.nodes.Artifact" : { + "description" : "This is Deprecated Artifact Node Type.", + "version" : "1.0.0", + "derived_from" : "tosca.nodes.Root" + }, + "dg-activate-netconf" : { + "description" : "This is Download Netconf Directed Graph", + "version" : "1.0.0", + "properties" : { + "mode" : { + "required" : false, + "type" : "string", + "default" : "sync" + }, + "version" : { + "required" : false, + "type" : "string", + "default" : "LATEST" + }, + "is-start-flow" : { + "required" : false, + "type" : "boolean", + "default" : false + } + }, + "capabilities" : { + "dg-node" : { + "type" : "tosca.capabilities.Node" + } + }, + "requirements" : { + "component-dependency" : { + "capability" : "component-node", + "node" : "component-netconf-executor", + "relationship" : "tosca.relationships.DependsOn" + } + }, + "interfaces" : { + "CONFIG" : { + "operations" : { + "ActivateNetconf" : { + "inputs" : { + "params" : { + "required" : false, + "type" : "list", + "entry_schema" : { + "type" : "datatype-property" + } + } + } + } + } + } + }, + "derived_from" : "tosca.nodes.DG" + }, + "source-input" : { + "description" : "This is Input Resource Source Node Type", + "version" : "1.0.0", + "properties" : { + "key" : { + "required" : false, + "type" : "string" + }, + "key-dependencies" : { + "required" : true, + "type" : "list", + "entry_schema" : { + "type" : "string" + } + } + }, + "derived_from" : "tosca.nodes.ResourceSource" + }, + "tosca.nodes.ResourceSource" : { + "description" : "TOSCA base type for Resource Sources", + "version" : "1.0.0", + "derived_from" : "tosca.nodes.Root" + }, + "component-resource-assignment" : { + "description" : "This is Resource Assignment Component API", + "version" : "1.0.0", + "capabilities" : { + "component-node" : { + "type" : "tosca.capabilities.Node" + } + }, + "interfaces" : { + "org-onap-ccsdk-config-assignment-service-ConfigAssignmentNode" : { + "operations" : { + "process" : { + "inputs" : { + "template-name" : { + "description" : "Service Template Name.", + "required" : true, + "type" : "string" + }, + "template-version" : { + "description" : "Service Template Version.", + "required" : true, + "type" : "string" + }, + "resource-type" : { + "description" : "Request type.", + "required" : true, + "type" : "string" + }, + "template-names" : { + "description" : "Name of the artifact Node Templates, to get the template Content.", + "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" : true, + "type" : "string" + }, + "action-name" : { + "description" : "Action Name of the process", + "required" : true, + "type" : "string" + } + }, + "outputs" : { + "resource-assignment-params" : { + "required" : true, + "type" : "string" + }, + "status" : { + "required" : true, + "type" : "string" + } + } + } + } + } + }, + "derived_from" : "tosca.nodes.Component" + }, + "tosca.nodes.DG" : { + "description" : "This is Directed Graph Node Type", + "version" : "1.0.0", + "derived_from" : "tosca.nodes.Root" + }, + "source-db" : { + "description" : "This is Database Resource Source Node Type", + "version" : "1.0.0", + "properties" : { + "type" : { + "required" : true, + "type" : "string", + "constraints" : [ { + "valid_values" : [ "SQL", "PLSQL" ] + } ] + }, + "query" : { + "required" : true, + "type" : "string" + }, + "input-key-mapping" : { + "required" : false, + "type" : "map", + "entry_schema" : { + "type" : "string" + } + }, + "output-key-mapping" : { + "required" : false, + "type" : "map", + "entry_schema" : { + "type" : "string" + } + }, + "key-dependencies" : { + "required" : true, + "type" : "list", + "entry_schema" : { + "type" : "string" + } + } + }, + "derived_from" : "tosca.nodes.ResourceSource" + }, + "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" : true, + "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" + }, + "source-rest" : { + "description" : "This is Rest Resource Source Node Type", + "version" : "1.0.0", + "properties" : { + "type" : { + "required" : false, + "type" : "string", + "constraints" : [ { + "valid_values" : [ "JSON" ] + } ], + "default" : "JSON" + }, + "url-path" : { + "required" : true, + "type" : "string" + }, + "path" : { + "required" : true, + "type" : "string" + }, + "expression-type" : { + "required" : false, + "type" : "string", + "constraints" : [ { + "valid_values" : [ "JSON_PATH", "JSON_POINTER" ] + } ], + "default" : "JSON_PATH" + }, + "input-key-mapping" : { + "required" : false, + "type" : "map", + "entry_schema" : { + "type" : "string" + } + }, + "output-key-mapping" : { + "required" : false, + "type" : "map", + "entry_schema" : { + "type" : "string" + } + }, + "key-dependencies" : { + "required" : true, + "type" : "list", + "entry_schema" : { + "type" : "string" + } + } + }, + "derived_from" : "tosca.nodes.ResourceSource" + }, + "component-netconf-executor" : { + "description" : "This is Netconf Transaction Configuration Component API", + "version" : "1.0.0", + "capabilities" : { + "component-node" : { + "type" : "tosca.capabilities.Node" + } + }, + "requirements" : { + "netconf-connection" : { + "capability" : "netconf", + "node" : "vnf-netconf-device", + "relationship" : "tosca.relationships.ConnectsTo" + } + }, + "interfaces" : { + "org-openecomp-sdnc-netconf-adaptor-service-NetconfExecutorNode" : { + "operations" : { + "process" : { + "inputs" : { + "request-id" : { + "description" : "Request Id used to store the generated configuration, in the database along with the template-name", + "required" : true, + "type" : "string" + }, + "template-name" : { + "description" : "Service Template Name", + "required" : true, + "type" : "string" + }, + "template-version" : { + "description" : "Service Template Version", + "required" : true, + "type" : "string" + }, + "action-name" : { + "description" : "Action Name to get from Database, Either (message & mask-info ) or ( resource-id & resource-type & action-name & template-name ) should be present. Message will be given higest priority", + "required" : false, + "type" : "string" + }, + "resource-type" : { + "description" : "Resource Type to get from Database, Either (message & mask-info ) or( resource-id & resource-type & action-name & template-name ) should be present. Message will be given higest priority", + "required" : false, + "type" : "string" + }, + "resource-id" : { + "description" : "Resource Id to get from Database, Either (message & mask-info ) or ( resource-id & resource-type & action-name & template-name ) should be present. Message will be given higest priority", + "required" : false, + "type" : "string" + }, + "reservation-id" : { + "description" : "Reservation Id used to send to NPM", + "required" : false, + "type" : "string" + }, + "execution-script" : { + "description" : "Python Script to Execute for this Component action, It should refer any one of Prython Artifact Definition for this Node Template.", + "required" : true, + "type" : "string" + } + }, + "outputs" : { + "response-data" : { + "description" : "Execution Response Data in JSON format.", + "required" : false, + "type" : "string" + }, + "status" : { + "description" : "Status of the Component Execution ( success or failure )", + "required" : true, + "type" : "string" + } + } + } + } + } + }, + "derived_from" : "tosca.nodes.Component" + } + }, + "topology_template" : { + "inputs" : { + "request-id" : { + "required" : true, + "type" : "string" + }, + "service-instance-id" : { + "required" : true, + "type" : "string" + }, + "scope-type" : { + "required" : true, + "type" : "string" + }, + "action-name" : { + "required" : true, + "type" : "string" + }, + "hostname" : { + "required" : true, + "type" : "string" + }, + "resource-assignment-request" : { + "description" : "This is Dynamic Data type for the receipe resource-assignment-action.", + "required" : false, + "type" : "dt-resource-assignment-request" + } + }, + "node_templates" : { + "vpe-netconf-device" : { + "type" : "vnf-netconf-device", + "capabilities" : { + "netconf" : { + "properties" : { + "login-key" : "sdnc", + "login-account" : "sndc-local", + "source" : "local", + "target-ip-address" : { + "get_attribute" : [ "SELF", "lo0-local-ipv4-address" ] + }, + "port-number" : 22, + "connection-time-out" : 30 + } + } + } + }, + "activate-netconf-component" : { + "type" : "component-netconf-executor", + "capabilities" : { + "component-node" : { } + }, + "requirements" : { + "netconf-connection" : { + "capability" : "netconf", + "node" : "vpe-netconf-device", + "relationship" : "tosca.relationships.ConnectsTo" + } + }, + "interfaces" : { + "org-openecomp-sdnc-netconf-adaptor-service-NetconfExecutorNode" : { + "operations" : { + "process" : { + "implementation" : { + "primary" : "file://netconf_adaptor/DefaultBaseLicenceConfig.py" + }, + "inputs" : { + "action-name" : { + "get_input" : "action-name" + }, + "template-name" : { + "get_input" : "template_name" + }, + "template-version" : { + "get_input" : "template_version" + }, + "resource-type" : "vnf-type", + "request-id" : { + "get_input" : "request-id" + }, + "resource-id" : { + "get_input" : "hostname" + }, + "execution-script" : "execution-script" + }, + "outputs" : { + "response-data" : { + "get_attribute" : [ "SELF", "netconf-executor-baseconfig.response-data" ] + }, + "status" : { + "get_attribute" : [ "SELF", "netconf-executor-baseconfig.status" ] + } + } + } + } + } + } + }, + "resource-assignment-ra-component" : { + "type" : "component-resource-assignment", + "capabilities" : { + "component-node" : { } + }, + "interfaces" : { + "org-onap-ccsdk-config-assignment-service-ConfigAssignmentNode" : { + "operations" : { + "process" : { + "inputs" : { + "template-names" : [ "base-config-template", "licence-template" ], + "action-name" : { + "get_input" : "action-name" + }, + "template-name" : { + "get_input" : "template_name" + }, + "template-version" : { + "get_input" : "template-version" + }, + "resource-type" : "vnf-type", + "request-id" : { + "get_input" : "request-id" + }, + "resource-id" : { + "get_input" : "hostname" + } + }, + "outputs" : { + "resource-assignment-params" : "success", + "status" : "status" + } + } + } + } + } + }, + "resource-assignment-action" : { + "type" : "dg-resource-assignment", + "properties" : { + "mode" : "sync", + "version" : "LATEST", + "is-start-flow" : false + }, + "capabilities" : { + "dg-node" : { } + }, + "requirements" : { + "component-dependency" : { + "capability" : "component-node", + "node" : "resource-assignment-ra-component", + "relationship" : "tosca.relationships.DependsOn" + } + }, + "interfaces" : { + "CONFIG" : { + "operations" : { + "ResourceAssignment" : { + "inputs" : { + "params" : [ ] + } + } + } + } + } + }, + "activate-action" : { + "type" : "dg-activate-netconf", + "properties" : { + "mode" : "sync", + "version" : "LATEST", + "is-start-flow" : false + }, + "capabilities" : { + "dg-node" : { } + }, + "requirements" : { + "component-dependency" : { + "capability" : "component-node", + "node" : "activate-netconf-component", + "relationship" : "tosca.relationships.DependsOn" + } + }, + "interfaces" : { + "CONFIG" : { + "operations" : { + "ActivateNetconf" : { + "inputs" : { + "params" : [ ] + } + } + } + } + } + }, + "base-config-template" : { + "type" : "artifact-config-template", + "properties" : { + "action-names" : [ "resource-assignment-action" ] + }, + "capabilities" : { + "content" : { + "properties" : { + "content" : "db://base-config-template" + } + }, + "mapping" : { + "properties" : { + "mapping" : [ { + "name" : "rs-db-source", + "property" : { + "required" : true, + "type" : "string" + }, + "input-param" : false, + "dictionary-name" : "sample-db-source", + "dictionary-source" : "db", + "dependencies" : [ "hostname" ], + "version" : 0 + }, { + "name" : "mdsal-source", + "property" : { + "description" : "", + "required" : true, + "type" : "list", + "entry_schema" : { + "type" : "dt-v4-aggregate" + } + }, + "input-param" : false, + "dictionary-name" : "sample-mdsal-source", + "dictionary-source" : "mdsal", + "dependencies" : [ "service-instance-id" ], + "version" : 0 + }, { + "name" : "hostname", + "property" : { + "required" : true, + "type" : "string" + }, + "dictionary-name" : "hostname", + "dictionary-source" : "input", + "version" : 0, + "input-param" : false + }, { + "name" : "service", + "property" : { + "required" : true, + "type" : "string" + }, + "dictionary-name" : "service", + "dictionary-source" : "input", + "version" : 0, + "input-param" : false + }, { + "name" : "service-instance-id", + "property" : { + "required" : true, + "type" : "string" + }, + "dictionary-name" : "service-instance-id", + "dictionary-source" : "input", + "version" : 0, + "input-param" : false + } ] + } + } + } + }, + "licence-template" : { + "type" : "artifact-config-template", + "properties" : { + "action-names" : [ "resource-assignment-action" ] + }, + "capabilities" : { + "content" : { + "properties" : { + "content" : "db://licence-template" + } + }, + "mapping" : { + "properties" : { + "mapping" : [ { + "name" : "licenses", + "property" : { + "required" : true, + "type" : "list", + "entry_schema" : { + "type" : "dt-license-key" + } + }, + "input-param" : false, + "dictionary-name" : "sample-licenses", + "dictionary-source" : "mdsal", + "dependencies" : [ "service-instance-id" ], + "version" : 0 + }, { + "name" : "service-instance-id", + "property" : { + "required" : true, + "type" : "string" + }, + "dictionary-name" : "service-instance-id", + "dictionary-source" : "input", + "version" : 0, + "input-param" : false + } ] + } + } + } + } + } + } }
\ No newline at end of file |