summaryrefslogtreecommitdiffstats
path: root/components
diff options
context:
space:
mode:
authorDan Timoney <dtimoney@att.com>2018-11-15 20:35:12 +0000
committerGerrit Code Review <gerrit@onap.org>2018-11-15 20:35:12 +0000
commit8e2f54808446119be1fc4fa2a8f3cf089aeabd46 (patch)
treeb72f9e4ec923101220bb7bb1a22ad53e9adb3360 /components
parent452a3c355a74436457bd526e08c08583e64a7ae0 (diff)
parenta9bf0541c65d8bb81b814bd85253cf4518fcb52b (diff)
Merge "Controller Design Studio"
Diffstat (limited to 'components')
-rw-r--r--components/core/pom.xml6
-rw-r--r--components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/BluePrintConstants.kt2
-rw-r--r--components/model-catalog/blueprint-model/service-blueprint/vFW/Definitions/vFW_spinup.json3613
-rw-r--r--components/model-catalog/blueprint-model/service-blueprint/vFW/TOSCA-Metadata/TOSCA.meta6
-rw-r--r--components/model-catalog/blueprint-model/service-blueprint/vFW/Templates/base_template.vtl56
-rw-r--r--components/model-catalog/blueprint-model/service-blueprint/vFW/Templates/vFW_vNF_Artifact.vtl203
-rw-r--r--components/model-catalog/blueprint-model/service-blueprint/vFW/Templates/vfw.vtl315
-rw-r--r--components/model-catalog/blueprint-model/service-blueprint/vFW/Templates/vpg.vtl315
-rw-r--r--components/model-catalog/blueprint-model/service-blueprint/vFW/Templates/vsn.vtl311
-rw-r--r--components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Definitions/activation-blueprint.json388
-rw-r--r--components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Mappings/baseconfig-mapping.json3
-rw-r--r--components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Plans/ActivateProcess.bpmn66
-rw-r--r--components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Scripts/SamplePythonComponentNode.py8
-rw-r--r--components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Scripts/__init__.py0
-rw-r--r--components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/TOSCA-Metadata/TOSCA.meta8
-rw-r--r--components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Templates/baseconfig-template.vtl1
-rw-r--r--components/model-catalog/definition-type/starter-type/artifact_type/artifact-bpmn-camunda.json8
-rw-r--r--components/model-catalog/definition-type/starter-type/artifact_type/artifact-directed-graph.json9
-rw-r--r--components/model-catalog/definition-type/starter-type/artifact_type/artifact-mapping-resource.json8
-rw-r--r--components/model-catalog/definition-type/starter-type/artifact_type/artifact-script-python.json8
-rw-r--r--components/model-catalog/definition-type/starter-type/artifact_type/artifact-template-velocity.json8
-rw-r--r--components/model-catalog/definition-type/starter-type/artifact_type/tosca.artifacts.Implementation.json5
-rw-r--r--components/model-catalog/definition-type/starter-type/data_type/datatype-property.json27
-rw-r--r--components/model-catalog/definition-type/starter-type/data_type/datatype-resource-assignment.json46
-rw-r--r--components/model-catalog/definition-type/starter-type/data_type/dt-license-key.json11
-rw-r--r--components/model-catalog/definition-type/starter-type/data_type/dt-v4-aggregate.json15
-rw-r--r--components/model-catalog/definition-type/starter-type/data_type/tosca.datatypes.Credential.json31
-rw-r--r--components/model-catalog/definition-type/starter-type/node_type/artifact-config-template.json37
-rw-r--r--components/model-catalog/definition-type/starter-type/node_type/component-config-generator.json72
-rw-r--r--components/model-catalog/definition-type/starter-type/node_type/component-netconf-executor.json79
-rw-r--r--components/model-catalog/definition-type/starter-type/node_type/component-resource-assignment.json68
-rw-r--r--components/model-catalog/definition-type/starter-type/node_type/dg-activate-netconf.json52
-rw-r--r--components/model-catalog/definition-type/starter-type/node_type/dg-config-generator.json51
-rw-r--r--components/model-catalog/definition-type/starter-type/node_type/dg-resource-assign-activate.json56
-rw-r--r--components/model-catalog/definition-type/starter-type/node_type/dg-resource-assignment.json51
-rw-r--r--components/model-catalog/definition-type/starter-type/node_type/source-db.json44
-rw-r--r--components/model-catalog/definition-type/starter-type/node_type/source-default.json18
-rw-r--r--components/model-catalog/definition-type/starter-type/node_type/source-input.json18
-rw-r--r--components/model-catalog/definition-type/starter-type/node_type/source-rest.json61
-rw-r--r--components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.Artifact.json5
-rw-r--r--components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.Component.json5
-rw-r--r--components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.DG.json5
-rw-r--r--components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.ResourceSource.json5
-rw-r--r--components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.Vnf.json5
-rw-r--r--components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.component.Python.json5
-rw-r--r--components/model-catalog/definition-type/starter-type/node_type/vnf-netconf-device.json42
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/address.json14
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/aic-cloud-region.json15
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/aic_clli.json15
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/availability_zone_0.json15
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/db-source.json24
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/default-source.json16
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/image_name.json33
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/input-source.json16
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/key_name.json33
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/mdsal-source.json34
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/name_0.json15
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/nexus_artifact_repo.json16
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/nf-role.json25
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/nfc-naming-code.json25
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/onap_private_net_cidr.json21
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/onap_private_net_id.json33
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/onap_private_subnet_id.json33
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/private-prefix-id.json21
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/protected-prefix-id.json21
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/protected_private_net_cidr.json21
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/protected_private_subnet_id.json16
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/pub_key.json34
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/public_net_id.json14
-rw-r--r--components/model-catalog/resource-dictionary/starter-dictionary/sample-db-source.json24
-rw-r--r--components/model-catalog/resource-dictionary/starter-dictionary/sample-default-source.json16
-rw-r--r--components/model-catalog/resource-dictionary/starter-dictionary/sample-input-source.json17
-rw-r--r--components/model-catalog/resource-dictionary/starter-dictionary/sample-licenses.json29
-rw-r--r--components/model-catalog/resource-dictionary/starter-dictionary/sample-mdsal-source.json25
-rw-r--r--components/model-catalog/resource-dictionary/starter-dictionary/sample-v4-ip-type.json17
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/sec_group.json16
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/service-instance-id.json15
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/status.json16
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/unprotected-prefix-id.json21
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/unprotected_private_net_cidr.json21
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/unprotected_private_subnet_id.json16
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vf-module-id.json15
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vf-module-label.json25
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vf-module-model-customization-uuid.json15
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vf-module-type.json25
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vf-naming-policy.json25
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vf-nf-code.json25
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vf_module_name.json15
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vfccustomizationuuid.json25
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vfw_name_0.json15
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vfw_private_ip_0.json33
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vfw_private_ip_1.json33
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vfw_private_ip_2.json14
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vm-type.json25
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vnf-id.json15
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vnf-model-customization-uuid.json15
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vnf-name.json28
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vnf_name.json27
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vnfc-model-invariant-uuid.json25
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vnfc-model-version.json25
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/volume-name.json15
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/volume_group_name.json16
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vpg_name_0.json15
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vpg_private_ip_0.json33
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vpg_private_ip_1.json16
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vsn_name_0.json15
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vsn_private_ip_0.json33
-rwxr-xr-xcomponents/model-catalog/resource-dictionary/starter-dictionary/vsn_private_ip_1.json14
-rw-r--r--components/parent/pom.xml46
-rw-r--r--components/resource-dict/pom.xml2
-rw-r--r--components/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/service/ResourceDefinitionRepoService.kt6
-rw-r--r--components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/service/ResourceDefinitionRepoServiceTest.java2
112 files changed, 7505 insertions, 32 deletions
diff --git a/components/core/pom.xml b/components/core/pom.xml
index 7c411656..2e0ab54a 100644
--- a/components/core/pom.xml
+++ b/components/core/pom.xml
@@ -55,13 +55,9 @@
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
- <artifactId>kotlin-test</artifactId>
+ <artifactId>kotlin-test-junit</artifactId>
<scope>test</scope>
</dependency>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- </dependency>
</dependencies>
</project>
diff --git a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/BluePrintConstants.kt b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/BluePrintConstants.kt
index d4bd20a6..2590d6dc 100644
--- a/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/BluePrintConstants.kt
+++ b/components/core/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/core/BluePrintConstants.kt
@@ -60,7 +60,7 @@ object BluePrintConstants {
const val PATH_ATTRIBUTES: String = "attributes"
const val PATH_ARTIFACTS: String = "artifacts"
- const val MODEL_DIR_MODEL_TYPE: String = "model_type"
+ const val MODEL_DIR_MODEL_TYPE: String = "definition-type"
const val MODEL_DEFINITION_TYPE_NODE_TYPE: String = "node_type"
const val MODEL_DEFINITION_TYPE_ARTIFACT_TYPE: String = "artifact_type"
diff --git a/components/model-catalog/blueprint-model/service-blueprint/vFW/Definitions/vFW_spinup.json b/components/model-catalog/blueprint-model/service-blueprint/vFW/Definitions/vFW_spinup.json
new file mode 100644
index 00000000..d5416c0e
--- /dev/null
+++ b/components/model-catalog/blueprint-model/service-blueprint/vFW/Definitions/vFW_spinup.json
@@ -0,0 +1,3613 @@
+{
+ "metadata": {
+ "template_author": "aa0419",
+ "template_name": "vFW_spinup",
+ "template_version": "1.0.0",
+ "service-type": "vFW",
+ "template_tags": "vFW, ONAP",
+ "release": "1810",
+ "vnf-type": "VFW"
+ },
+ "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": {
+ "resource-assignment-ra-component": {
+ "type": "component-resource-assignment",
+ "interfaces": {
+ "org-onap-ccsdk-config-assignment-service-ConfigAssignmentNode": {
+ "operations": {
+ "process": {
+ "inputs": {
+ "action-name": "{ \"get_input\" : \"action-name\" }",
+ "service-template-name": "{ \"get_attribute\" : \"service-template-name\" }",
+ "template-names": [
+ "vFW_vNF_Artifact",
+ "base_template",
+ "vfw",
+ "vsn",
+ "vpg"
+ ],
+ "service-template-version": "{ \"get_attribute\" : \"service-template-version\" }",
+ "resource-type": "vnf-type",
+ "request-id": "{ \"get_input\" : \"request-id\" }",
+ "resource-id": "{ \"get_input\" : \"hostname\" }"
+ },
+ "outputs": {
+ "resource-assignment-params": "Success",
+ "status": "status"
+ }
+ }
+ }
+ }
+ },
+ "capabilities": {
+ "component-node": {
+
+ }
+ }
+ },
+ "resource-assignment-action": {
+ "type": "dg-resource-assignment",
+ "properties": {
+ "mode": "sync",
+ "version": "LATEST",
+ "is-start-flow": false
+ },
+ "interfaces": {
+ "CONFIG": {
+ "operations": {
+ "ResourceAssignment": {
+ "inputs": {
+ "params": [
+
+ ]
+ }
+ }
+ }
+ }
+ },
+ "capabilities": {
+ "dg-node": {
+
+ },
+ "content": {
+ "properties": {
+ "type": "json"
+ }
+ }
+ },
+ "requirements": {
+ "component-dependency": {
+ "capability": "component-node",
+ "node": "resource-assignment-ra-component",
+ "relationship": "tosca.relationships.DependsOn"
+ }
+ }
+ },
+ "vFW_vNF_Artifact": {
+ "type": "artifact-config-template",
+ "properties": {
+ "action-names": [
+ "resource-assignment-action"
+ ]
+ },
+ "capabilities": {
+ "content": {
+ "properties": {
+ "content": "vFW_vNF_Artifact"
+ }
+ },
+ "mapping": {
+ "properties": {
+ "mapping": [
+ {
+ "name": "service-instance-id",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "service-instance-id",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vnf-id",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vnf-id",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vnf-model-customization-uuid",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vnf-model-customization-uuid",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "aic-cloud-region",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "aic-cloud-region",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "onap_private_net_id",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "onap_private_net_id",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "onap_private_subnet_id",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "onap_private_subnet_id",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "key_name",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "key_name",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "image_name",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ },
+ "default": "Ubuntu 14.04 LTS Generic"
+ },
+ "input-param": false,
+ "dictionary-name": "image_name",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "pub_key",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ },
+ "default": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDKXDgoo3+WOqcUG8/5uUbk81+yczgwC4Y8ywTmuQqbNxlY1oQ0YxdMUqUnhitSXs5S/yRuAVOYHwGg2mCs20oAINrP+mxBI544AMIb9itPjCtgqtE2EWo6MmnFGbHB4Sx3XioE7F4VPsh7japsIwzOjbrQe+Mua1TGQ5d4nfEOQaaglXLLPFfuc7WbhbJbK6Q7rHqZfRcOwAMXgDoBqlyqKeiKwnumddo2RyNT8ljYmvB6buz7KnMinzo7qB0uktVT05FH9Rg0CTWH5norlG5qXgP2aukL0gk1ph8iAt7uYLf1ktp+LJI2gaF6L0/qli9EmVCSLr1uJ38Q8CBflhkh"
+ },
+ "input-param": false,
+ "dictionary-name": "pub_key",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vnf_name",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vnf_name",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf-naming-policy",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ },
+ "default": "SDNC_Policy.Config_MS_ONAP_VFW_NAMING_TIMESTAMP"
+ },
+ "input-param": false,
+ "dictionary-name": "vf-naming-policy",
+ "dictionary-source": "default",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "nf-role",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "nf-role",
+ "dictionary-source": "db",
+ "dependencies": [
+ "vnf-model-customization-uuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "vfw_private_ip_1",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vfw_private_ip_1",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vfw_private_ip_0",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vfw_private_ip_0",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vpg_private_ip_0",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vpg_private_ip_0",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vsn_private_ip_0",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vsn_private_ip_0",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "protected-prefix-id",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "integer",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "protected-prefix-id",
+ "dictionary-source": "db",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "unprotected-prefix-id",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "integer",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "unprotected-prefix-id",
+ "dictionary-source": "db",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf-nf-code",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vf-nf-code",
+ "dictionary-source": "db",
+ "dependencies": [
+ "vnf-model-customization-uuid"
+ ],
+ "version": 0
+ }
+ ]
+ }
+ }
+ }
+ },
+ "vfw": {
+ "type": "artifact-config-template",
+ "capabilities": {
+ "content": {
+ "properties": {
+ "content": "vfw"
+ }
+ },
+ "mapping": {
+ "properties": {
+ "mapping": [
+ {
+ "name": "service-instance-id",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "service-instance-id",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vnf-id",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vnf-id",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vnf-name",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vnf-name",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "vnf-model-customization-uuid",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vnf-model-customization-uuid",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf-module-id",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vf-module-id",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf-module-type",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vf-module-type",
+ "dictionary-source": "db",
+ "dependencies": [
+ "vf-module-model-customization-uuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf-module-model-customization-uuid",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vf-module-model-customization-uuid",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vfccustomizationuuid",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vfccustomizationuuid",
+ "dictionary-source": "db",
+ "dependencies": [
+ "vf-module-model-customization-uuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "aic-cloud-region",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "aic-cloud-region",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vm-type",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vm-type",
+ "dictionary-source": "db",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vnfc-model-invariant-uuid",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vnfc-model-invariant-uuid",
+ "dictionary-source": "db",
+ "dependencies": [
+ "vfccustomizationuuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "vnfc-model-version",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vnfc-model-version",
+ "dictionary-source": "db",
+ "dependencies": [
+ "vfccustomizationuuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "nf-role",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ },
+ "default": "vFW"
+ },
+ "input-param": false,
+ "dictionary-name": "nf-role",
+ "dictionary-source": "default",
+ "dependencies": [
+ "vnf-model-customization-uuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "nfc-naming-code",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "nfc-naming-code",
+ "dictionary-source": "db",
+ "dependencies": [
+ "vfccustomizationuuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "public_net_id",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ },
+ "default": "public_net_id"
+ },
+ "input-param": false,
+ "dictionary-name": "public_net_id",
+ "dictionary-source": "default",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "image_name",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "image_name",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "key_name",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "key_name",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "pub_key",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "pub_key",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "onap_private_net_id",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "onap_private_net_id",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "onap_private_subnet_id",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "onap_private_subnet_id",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "unprotected_private_net_cidr",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "unprotected_private_net_cidr",
+ "dictionary-source": "db",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "protected_private_net_cidr",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "protected_private_net_cidr",
+ "dictionary-source": "db",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "nexus_artifact_repo",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ },
+ "default": "nexus_artifact_repo"
+ },
+ "input-param": false,
+ "dictionary-name": "nexus_artifact_repo",
+ "dictionary-source": "default",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "sec_group",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ },
+ "default": "onap_sg_PUhf"
+ },
+ "input-param": false,
+ "dictionary-name": "sec_group",
+ "dictionary-source": "default",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "onap_private_net_cidr",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "onap_private_net_cidr",
+ "dictionary-source": "db",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vfw_name_0",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vfw_name_0",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf-naming-policy",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ },
+ "default": "SDNC_Policy.Config_MS_ONAP_VFW_NAMING_TIMESTAMP"
+ },
+ "input-param": false,
+ "dictionary-name": "vf-naming-policy",
+ "dictionary-source": "default",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf_module_name",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vf_module_name",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf-module-label",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vf-module-label",
+ "dictionary-source": "db",
+ "dependencies": [
+ "vf-module-model-customization-uuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "private-prefix-id",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "integer",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "private-prefix-id",
+ "dictionary-source": "db",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vfw_private_ip_2",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vfw_private_ip_2",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vnf_name",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vnf_name",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ }
+ ]
+ }
+ }
+ }
+ },
+ "vpg": {
+ "type": "artifact-config-template",
+ "capabilities": {
+ "content": {
+ "properties": {
+ "content": "vpg"
+ }
+ },
+ "mapping": {
+ "properties": {
+ "mapping": [
+ {
+ "name": "service-instance-id",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "service-instance-id",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vnf-id",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vnf-id",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vnf-name",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vnf-name",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "vnf-model-customization-uuid",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vnf-model-customization-uuid",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf-module-id",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vf-module-id",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf-module-type",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vf-module-type",
+ "dictionary-source": "db",
+ "dependencies": [
+ "vf-module-model-customization-uuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf-module-model-customization-uuid",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vf-module-model-customization-uuid",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vfccustomizationuuid",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vfccustomizationuuid",
+ "dictionary-source": "db",
+ "dependencies": [
+ "vf-module-model-customization-uuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "aic-cloud-region",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "aic-cloud-region",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vm-type",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vm-type",
+ "dictionary-source": "db",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vnfc-model-invariant-uuid",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vnfc-model-invariant-uuid",
+ "dictionary-source": "db",
+ "dependencies": [
+ "vfccustomizationuuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "vnfc-model-version",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vnfc-model-version",
+ "dictionary-source": "db",
+ "dependencies": [
+ "vfccustomizationuuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "nf-role",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ },
+ "default": "vPG"
+ },
+ "input-param": false,
+ "dictionary-name": "nf-role",
+ "dictionary-source": "default",
+ "dependencies": [
+ "vnf-model-customization-uuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "nfc-naming-code",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "nfc-naming-code",
+ "dictionary-source": "db",
+ "dependencies": [
+ "vfccustomizationuuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "public_net_id",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ },
+ "default": "public_net_id"
+ },
+ "input-param": false,
+ "dictionary-name": "public_net_id",
+ "dictionary-source": "default",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "image_name",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "image_name",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "key_name",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "key_name",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "pub_key",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "pub_key",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "onap_private_net_id",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "onap_private_net_id",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "onap_private_subnet_id",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "onap_private_subnet_id",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "unprotected_private_net_cidr",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "unprotected_private_net_cidr",
+ "dictionary-source": "db",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "onap_private_net_cidr",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "onap_private_net_cidr",
+ "dictionary-source": "db",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vfw_private_ip_0",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vfw_private_ip_0",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "vsn_private_ip_0",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vsn_private_ip_0",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "nexus_artifact_repo",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ },
+ "default": "nexus_artifact_repo"
+ },
+ "input-param": false,
+ "dictionary-name": "nexus_artifact_repo",
+ "dictionary-source": "default",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "sec_group",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ },
+ "default": "onap_sg_PUhf"
+ },
+ "input-param": false,
+ "dictionary-name": "sec_group",
+ "dictionary-source": "default",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vpg_private_ip_0",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vpg_private_ip_0",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "vpg_name_0",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vpg_name_0",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf-naming-policy",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ },
+ "default": "SDNC_Policy.Config_MS_ONAP_VPG_NAMING_TIMESTAMP"
+ },
+ "input-param": false,
+ "dictionary-name": "vf-naming-policy",
+ "dictionary-source": "default",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf_module_name",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vf_module_name",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf-module-label",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vf-module-label",
+ "dictionary-source": "db",
+ "dependencies": [
+ "vf-module-model-customization-uuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "private-prefix-id",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "integer",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "private-prefix-id",
+ "dictionary-source": "db",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vpg_private_ip_1",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vpg_private_ip_1",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ }
+ ]
+ }
+ }
+ }
+ },
+ "vsn": {
+ "type": "artifact-config-template",
+ "capabilities": {
+ "content": {
+ "properties": {
+ "content": "vsn"
+ }
+ },
+ "mapping": {
+ "properties": {
+ "mapping": [
+ {
+ "name": "service-instance-id",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "service-instance-id",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vnf-id",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vnf-id",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vnf-name",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vnf-name",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "vnf-model-customization-uuid",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vnf-model-customization-uuid",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf-module-id",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vf-module-id",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf-module-type",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vf-module-type",
+ "dictionary-source": "db",
+ "dependencies": [
+ "vf-module-model-customization-uuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf-module-model-customization-uuid",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vf-module-model-customization-uuid",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vfccustomizationuuid",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vfccustomizationuuid",
+ "dictionary-source": "db",
+ "dependencies": [
+ "vf-module-model-customization-uuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "aic-cloud-region",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "aic-cloud-region",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vm-type",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vm-type",
+ "dictionary-source": "db",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vnfc-model-invariant-uuid",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vnfc-model-invariant-uuid",
+ "dictionary-source": "db",
+ "dependencies": [
+ "vfccustomizationuuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "vnfc-model-version",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vnfc-model-version",
+ "dictionary-source": "db",
+ "dependencies": [
+ "vfccustomizationuuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "nf-role",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ },
+ "default": "vSN"
+ },
+ "input-param": false,
+ "dictionary-name": "nf-role",
+ "dictionary-source": "default",
+ "dependencies": [
+ "vnf-model-customization-uuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "nfc-naming-code",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "nfc-naming-code",
+ "dictionary-source": "db",
+ "dependencies": [
+ "vfccustomizationuuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "image_name",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "image_name",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "public_net_id",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ },
+ "value": "public_net_id",
+ "default": "public_net_id"
+ },
+ "input-param": false,
+ "dictionary-name": "public_net_id",
+ "dictionary-source": "default",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "key_name",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "key_name",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "pub_key",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "pub_key",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "onap_private_net_id",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "onap_private_net_id",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "onap_private_subnet_id",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "onap_private_subnet_id",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "unprotected_private_net_cidr",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "unprotected_private_net_cidr",
+ "dictionary-source": "db",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "protected_private_net_cidr",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "protected_private_net_cidr",
+ "dictionary-source": "db",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "onap_private_net_cidr",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "onap_private_net_cidr",
+ "dictionary-source": "db",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "nexus_artifact_repo",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ },
+ "value": "nexus_artifact_repo",
+ "default": "nexus_artifact_repo"
+ },
+ "input-param": false,
+ "dictionary-name": "nexus_artifact_repo",
+ "dictionary-source": "default",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "sec_group",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ },
+ "default": "onap_sg_PUhf"
+ },
+ "input-param": false,
+ "dictionary-name": "sec_group",
+ "dictionary-source": "default",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vfw_private_ip_1",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vfw_private_ip_1",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "vsn_name_0",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vsn_name_0",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf-naming-policy",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ },
+ "default": "SDNC_Policy.Config_MS_ONAP_VSN_NAMING_TIMESTAMP"
+ },
+ "input-param": false,
+ "dictionary-name": "vf-naming-policy",
+ "dictionary-source": "default",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf_module_name",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vf_module_name",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf-module-label",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vf-module-label",
+ "dictionary-source": "db",
+ "dependencies": [
+ "vf-module-model-customization-uuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "private-prefix-id",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "integer",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "private-prefix-id",
+ "dictionary-source": "db",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vsn_private_ip_1",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vsn_private_ip_1",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "protected-prefix-id",
+ "property": {
+ "description": "",
+ "required": false,
+ "type": "integer",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "protected-prefix-id",
+ "dictionary-source": "db",
+ "dependencies": [
+
+ ],
+ "version": 0
+ }
+ ]
+ }
+ }
+ }
+ },
+ "base_template": {
+ "type": "artifact-config-template",
+ "capabilities": {
+ "content": {
+ "properties": {
+ "content": "base_template"
+ }
+ },
+ "mapping": {
+ "properties": {
+ "mapping": [
+ {
+ "name": "service-instance-id",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "service-instance-id",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf-module-type",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vf-module-type",
+ "dictionary-source": "db",
+ "dependencies": [
+ "vf-module-model-customization-uuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf-module-model-customization-uuid",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vf-module-model-customization-uuid",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vnf-id",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vnf-id",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vf-module-id",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vf-module-id",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "vnf-model-customization-uuid",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vnf-model-customization-uuid",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "aic-cloud-region",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "aic-cloud-region",
+ "dictionary-source": "input",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "nf-role",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "nf-role",
+ "dictionary-source": "db",
+ "dependencies": [
+ "vnf-model-customization-uuid"
+ ],
+ "version": 0
+ },
+ {
+ "name": "vnf-name",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "vnf-name",
+ "dictionary-source": "mdsal",
+ "dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ],
+ "version": 0
+ },
+ {
+ "name": "unprotected_private_net_cidr",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "unprotected_private_net_cidr",
+ "dictionary-source": "db",
+ "dependencies": [
+
+ ],
+ "version": 0
+ },
+ {
+ "name": "protected_private_net_cidr",
+ "property": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "status": "",
+ "constraints": [
+ {
+
+ }
+ ],
+ "entry_schema": {
+ "type": ""
+ }
+ },
+ "input-param": false,
+ "dictionary-name": "protected_private_net_cidr",
+ "dictionary-source": "db",
+ "dependencies": [
+
+ ],
+ "version": 0
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "node_types": {
+ "tosca.nodes.Component": {
+ "description": "This is default Component Node",
+ "version": "1.0.0",
+ "derived_from": "tosca.nodes.Root"
+ },
+ "tosca.nodes.DG": {
+ "description": "This is Directed Graph 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"
+ },
+ "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": {
+ "action-name": {
+ "description": "Action Name of the process",
+ "required": true,
+ "type": "string"
+ },
+ "service-template-name": {
+ "description": "Service Template Name.",
+ "required": true,
+ "type": "string"
+ },
+ "service-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"
+ }
+ },
+ "outputs": {
+ "resource-assignment-params": {
+ "required": true,
+ "type": "string"
+ },
+ "status": {
+ "required": true,
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ },
+ "derived_from": "tosca.nodes.Component"
+ },
+ "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"
+ },
+ "content": {
+ "type": "tosca.capabilities.Content",
+ "properties": {
+ "type": {
+ "required": false,
+ "type": "string",
+ "default": "json"
+ },
+ "content": {
+ "required": false,
+ "type": "string"
+ }
+ }
+ }
+ },
+ "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"
+ },
+ "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"
+ }
+ },
+ "data_types": {
+ "datatype-property": {
+ "version": "1.0.0",
+ "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",
+ "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"
+ },
+ "datatype-resource-assignment": {
+ "version": "1.0.0",
+ "description": "This is Resource Assignment Data Type",
+ "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"
+ },
+ "dt-resource-assignment-request": {
+ "version": "1.0.0",
+ "description": "This is Dynamic Data type definition generated from resource mapping for the config template name activate-template.",
+ "properties": {
+ "password-user-ftap-nsm": {
+ "required": true,
+ "type": "string",
+ "default": "password-user-ftap"
+ },
+ "reservation-id": {
+ "required": true,
+ "type": "string",
+ "value": "123"
+ },
+ "security-manager-resource-key": {
+ "required": true,
+ "type": "string",
+ "value": "sdnc"
+ },
+ "password-user-ftap": {
+ "description": "",
+ "required": true,
+ "type": "string",
+ "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/vFW/TOSCA-Metadata/TOSCA.meta b/components/model-catalog/blueprint-model/service-blueprint/vFW/TOSCA-Metadata/TOSCA.meta
new file mode 100644
index 00000000..7918c115
--- /dev/null
+++ b/components/model-catalog/blueprint-model/service-blueprint/vFW/TOSCA-Metadata/TOSCA.meta
@@ -0,0 +1,6 @@
+TOSCA-Meta-File-Version: 1.0.0
+CSAR-Version: 1.0
+Created-By: ONAP
+Entry-Definitions: Definitions/vFW_spinup.json
+Template-Tags: ONAP, vFW
+Content-Type: application/vnd.oasis.bpmn
diff --git a/components/model-catalog/blueprint-model/service-blueprint/vFW/Templates/base_template.vtl b/components/model-catalog/blueprint-model/service-blueprint/vFW/Templates/base_template.vtl
new file mode 100644
index 00000000..1f8298c5
--- /dev/null
+++ b/components/model-catalog/blueprint-model/service-blueprint/vFW/Templates/base_template.vtl
@@ -0,0 +1,56 @@
+{
+ "resource-accumulator-resolved-data": [
+ {
+ "param-name": "service-instance-id",
+ "param-value": "${service-instance-id}"
+ },
+ {
+ "param-name": "vnf_id",
+ "param-value": "${vnf-id}"
+ },
+ {
+ "param-name": "vnf_name",
+ "param-value": "${vnf-name}"
+ },
+ {
+ "param-name": "vnf_model_customization_uuid",
+ "param-value": "${vnf-model-customization-uuid}"
+ },
+ {
+ "param-name": "vf_module_id",
+ "param-value": "${vf-module-id}"
+ },
+ {
+ "param-name": "vf_module_type",
+ "param-value": "${vf-module-type}"
+ },
+ {
+ "param-name": "unprotected_private_net_id",
+ "param-value": "${vnf-name}_unprotected"
+ },
+ {
+ "param-name": "unprotected_private_subnet_id",
+ "param-value": "${vnf-name}_unprotected_sub"
+ },
+ {
+ "param-name": "unprotected_private_net_cidr",
+ "param-value": "${unprotected_private_net_cidr}"
+ },
+ {
+ "param-name": "protected_private_net_id",
+ "param-value": "${vnf-name}_protected"
+ },
+ {
+ "param-name": "protected_private_subnet_id",
+ "param-value": "${vnf-name}_protected_sub"
+ },
+ {
+ "param-name": "protected_private_net_cidr",
+ "param-value": "${protected_private_net_cidr}"
+ },
+ {
+ "param-name": "vf_module_name",
+ "param-value": "${vnf-name}_base"
+ }
+ ]
+} \ No newline at end of file
diff --git a/components/model-catalog/blueprint-model/service-blueprint/vFW/Templates/vFW_vNF_Artifact.vtl b/components/model-catalog/blueprint-model/service-blueprint/vFW/Templates/vFW_vNF_Artifact.vtl
new file mode 100644
index 00000000..ca09046a
--- /dev/null
+++ b/components/model-catalog/blueprint-model/service-blueprint/vFW/Templates/vFW_vNF_Artifact.vtl
@@ -0,0 +1,203 @@
+{
+ "resource-accumulator-resolved-data": [
+ {
+ "param-name": "service-instance-id",
+ "param-value": "${service-instance-id}"
+ },
+ {
+ "param-name": "vnf_id",
+ "param-value": "${vnf-id}"
+ },
+ {
+ "param-name": "vnf-model-customization-uuid",
+ "param-value": "${vnf-model-customization-uuid}"
+ },
+ {
+ "param-name": "aic-cloud-region",
+ "param-value": "${aic-cloud-region}"
+ },
+ {
+ "param-name": "onap_private_net_id",
+ "param-value": "${onap_private_net_id}"
+ },
+ {
+ "param-name": "pub_key",
+ "param-value": "${pub_key}"
+ },
+ {
+ "param-name": "image_name",
+ "param-value": "${image_name}"
+ },
+ {
+ "param-name": "onap_private_subnet_id",
+ "param-value": "${onap_private_net_id}_sub"
+ }
+ ],
+ "capability-data": [
+ {
+ "capability-name": "generate-name",
+ "key-mapping": [
+ {
+ "payload": [
+ {
+ "param-name": "resource-name",
+ "param-value": "vnf_name"
+ },
+ {
+ "param-name": "resource-value",
+ "param-value": "${vnf_name}"
+ },
+ {
+ "param-name": "external-key",
+ "param-value": "${vnf-id}_vnf_name"
+ },
+ {
+ "param-name": "policy-instance-name",
+ "param-value": "${vf-naming-policy}"
+ },
+ {
+ "param-name": "nf-role",
+ "param-value": "${nf-role}"
+ },
+ {
+ "param-name": "naming-type",
+ "param-value": "VNF"
+ },
+ {
+ "param-name": "AIC_CLOUD_REGION",
+ "param-value": "${aic-cloud-region}"
+ }
+ ],
+ "output-key-mapping": [
+ {
+ "resource-name": "vnf_name",
+ "resource-value": "${vnf_name}"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "capability-name": "netbox-ip-assign",
+ "key-mapping": [
+ {
+ "payload": [
+ {
+ "param-name": "service-instance-id",
+ "param-value": "${service-instance-id}"
+ },
+ {
+ "param-name": "prefix-id",
+ "param-value": "${protected-prefix-id}"
+ },
+ {
+ "param-name": "vnf-id",
+ "param-value": "${vnf-id}"
+ },
+ {
+ "param-name": "external_key",
+ "param-value": "${vnf-id}-vfw_private_ip_1"
+ }
+ ],
+ "output-key-mapping": [
+ {
+ "resource-name": "vfw_private_ip_1",
+ "resource-value": "${vfw_private_ip_1}"
+ }
+ ]
+ },
+ {
+ "payload": [
+ {
+ "param-name": "service-instance-id",
+ "param-value": "${service-instance-id}"
+ },
+ {
+ "param-name": "prefix-id",
+ "param-value": "${unprotected-prefix-id}"
+ },
+ {
+ "param-name": "vnf-id",
+ "param-value": "${vnf-id}"
+ },
+ {
+ "param-name": "external_key",
+ "param-value": "${vnf-id}-vfw_private_ip_0"
+ }
+ ],
+ "output-key-mapping": [
+ {
+ "resource-name": "vfw_private_ip_0",
+ "resource-value": "${vfw_private_ip_0}"
+ }
+ ]
+ },
+ {
+ "payload": [
+ {
+ "param-name": "service-instance-id",
+ "param-value": "${service-instance-id}"
+ },
+ {
+ "param-name": "prefix-id",
+ "param-value": "${unprotected-prefix-id}"
+ },
+ {
+ "param-name": "vnf-id",
+ "param-value": "${vnf-id}"
+ },
+ {
+ "param-name": "external_key",
+ "param-value": "${vnf-id}-vpg_private_ip_0"
+ }
+ ],
+ "output-key-mapping": [
+ {
+ "resource-name": "vpg_private_ip_0",
+ "resource-value": "${vpg_private_ip_0}"
+ }
+ ]
+ },
+ {
+ "payload": [
+ {
+ "param-name": "service-instance-id",
+ "param-value": "${service-instance-id}"
+ },
+ {
+ "param-name": "prefix-id",
+ "param-value": "${protected-prefix-id}"
+ },
+ {
+ "param-name": "vnf-id",
+ "param-value": "${vnf-id}"
+ },
+ {
+ "param-name": "external_key",
+ "param-value": "${vnf-id}-vsn_private_ip_0"
+ }
+ ],
+ "output-key-mapping": [
+ {
+ "resource-name": "vsn_private_ip_0",
+ "resource-value": "${vsn_private_ip_0}"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "capability-name": "unresolved-composite-data",
+ "key-mapping": [
+ {
+ "output-key-mapping": [
+ {
+ "resource-name": "key_name",
+ "resource-value": "${vnf_name}_key"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+} \ No newline at end of file
diff --git a/components/model-catalog/blueprint-model/service-blueprint/vFW/Templates/vfw.vtl b/components/model-catalog/blueprint-model/service-blueprint/vFW/Templates/vfw.vtl
new file mode 100644
index 00000000..06a91d3a
--- /dev/null
+++ b/components/model-catalog/blueprint-model/service-blueprint/vFW/Templates/vfw.vtl
@@ -0,0 +1,315 @@
+{
+ "resource-accumulator-resolved-data": [
+ {
+ "param-name": "service-instance-id",
+ "param-value": "${service-instance-id}"
+ },
+ {
+ "param-name": "vnf_id",
+ "param-value": "${vnf-id}"
+ },
+ {
+ "param-name": "vnf_name",
+ "param-value": "${vnf-name}"
+ },
+ {
+ "param-name": "vnf_model_customization_uuid",
+ "param-value": "${vnf-model-customization-uuid}"
+ },
+ {
+ "param-name": "vf_module_id",
+ "param-value": "${vnf-id}"
+ },
+ {
+ "param-name": "vf_module_type",
+ "param-value": "${vf-module-type}"
+ },
+ {
+ "param-name": "vf_module_customization_uuid",
+ "param-value": "${vf-module-model-customization-uuid}"
+ },
+ {
+ "param-name": "vfc_customization_uuid",
+ "param-value": "${vfccustomizationuuid}"
+ },
+ {
+ "param-name": "aic-cloud-region",
+ "param-value": "${aic-cloud-region}"
+ },
+ {
+ "param-name": "vm-type",
+ "param-value": "${vm-type}"
+ },
+ {
+ "param-name": "vnfc-model-customization-uuid",
+ "param-value": "${vfccustomizationuuid}"
+ },
+ {
+ "param-name": "vnfc-model-invariant-uuid",
+ "param-value": "${vnfc-model-invariant-uuid}"
+ },
+ {
+ "param-name": "vnfc-model-version",
+ "param-value": "${vnfc-model-version}"
+ },
+ {
+ "param-name": "nfc-function",
+ "param-value": "${nf-role}"
+ },
+ {
+ "param-name": "nfc-naming-code",
+ "param-value": "${nfc-naming-code}"
+ },
+ {
+ "param-name": "cloud_env",
+ "param-value": "openstack"
+ },
+ {
+ "param-name": "repo_url_artifacts",
+ "param-value": "https://nexus.onap.org/content/groups/staging"
+ },
+ {
+ "param-name": "repo_url_blob",
+ "param-value": "https://nexus.onap.org/content/repositories/raw"
+ },
+ {
+ "param-name": "dcae_collector_port",
+ "param-value": "8080"
+ },
+ {
+ "param-name": "image_name",
+ "param-value": "${image_name}"
+ },
+ {
+ "param-name": "flavor_name",
+ "param-value": "m1.medium"
+ },
+ {
+ "param-name": "install_script_version",
+ "param-value": "1.2.1-SNAPSHOT"
+ },
+ {
+ "param-name": "demo_artifacts_version",
+ "param-value": "1.2.1-SNAPSHOT"
+ },
+ {
+ "param-name": "dcae_collector_ip",
+ "param-value": "10.0.4.1"
+ },
+ {
+ "param-name": "key_name",
+ "param-value": "${key_name}"
+ },
+ {
+ "param-name": "pub_key",
+ "param-value": "${pub_key}"
+ },
+ {
+ "param-name": "public_net_id",
+ "param-value": "${public_net_id}"
+ },
+ {
+ "param-name": "unprotected_private_net_id",
+ "param-value": "${vnf-name}_unprotected"
+ },
+ {
+ "param-name": "protected_private_net_id",
+ "param-value": "${vnf-name}_protected"
+ },
+ {
+ "param-name": "onap_private_net_id",
+ "param-value": "${onap_private_net_id}"
+ },
+ {
+ "param-name": "onap_private_subnet_id",
+ "param-value": "${onap_private_subnet_id}"
+ },
+ {
+ "param-name": "unprotected_private_net_cidr",
+ "param-value": "${unprotected_private_net_cidr}"
+ },
+ {
+ "param-name": "protected_private_net_cidr",
+ "param-value": "${protected_private_net_cidr}"
+ },
+ {
+ "param-name": "unprotected_private_subnet_id",
+ "param-value": "${vnf-name}_unprotected_sub"
+ },
+ {
+ "param-name": "unprotected_private_net_cidr",
+ "param-value": "${unprotected_private_net_cidr}"
+ },
+ {
+ "param-name": "protected_private_subnet_id",
+ "param-value": "${vnf-name}_protected_sub"
+ },
+ {
+ "param-name": "nexus_artifact_repo",
+ "param-value": "${nexus_artifact_repo}"
+ },
+ {
+ "param-name": "sec_group",
+ "param-value": "${sec_group}"
+ },
+ {
+ "param-name": "onap_private_net_cidr",
+ "param-value": "${onap_private_net_cidr}"
+ }
+ ],
+ "capability-data": [
+ {
+ "capability-name": "generate-name",
+ "key-mapping": [
+ {
+ "payload": [
+ {
+ "param-name": "resource-name",
+ "param-value": "vfw_name_0"
+ },
+ {
+ "param-name": "resource-value",
+ "param-value": "${vfw_name_0}"
+ },
+ {
+ "param-name": "external-key",
+ "param-value": "${vf-module-id}_vfw_name_0"
+ },
+ {
+ "param-name": "policy-instance-name",
+ "param-value": "${vf-naming-policy}"
+ },
+ {
+ "param-name": "nf-role",
+ "param-value": "${nf-role}"
+ },
+ {
+ "param-name": "naming-type",
+ "param-value": "VNFC"
+ },
+ {
+ "param-name": "VNF_NAME",
+ "param-value": "${vnf-name}"
+ },
+ {
+ "param-name": "NFC_NAMING_CODE",
+ "param-value": "${nfc-naming-code}"
+ }
+ ],
+ "output-key-mapping": [
+ {
+ "resource-name": "vfw_name_0",
+ "resource-value": "${vfw_name_0}"
+ }
+ ]
+ },
+ {
+ "payload": [
+ {
+ "param-name": "resource-name",
+ "param-value": "vf_module_name"
+ },
+ {
+ "param-name": "resource-value",
+ "param-value": "${vf_module_name}"
+ },
+ {
+ "param-name": "external-key",
+ "param-value": "${vf-module-id}_vf_module_name"
+ },
+ {
+ "param-name": "policy-instance-name",
+ "param-value": "${vf-naming-policy}"
+ },
+ {
+ "param-name": "nf-role",
+ "param-value": "${nf-role}"
+ },
+ {
+ "param-name": "naming-type",
+ "param-value": "VF-MODULE"
+ },
+ {
+ "param-name": "VNF_NAME",
+ "param-value": "${vnf-name}"
+ },
+ {
+ "param-name": "VF_MODULE_LABEL",
+ "param-value": "${vf-module-label}"
+ },
+ {
+ "param-name": "VF_MODULE_TYPE",
+ "param-value": "${vf-module-type}"
+ }
+ ],
+ "output-key-mapping": [
+ {
+ "resource-name": "vf_module_name",
+ "resource-value": "${vf_module_name}"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "capability-name": "netbox-ip-assign",
+ "key-mapping": [
+ {
+ "payload": [
+ {
+ "param-name": "service-instance-id",
+ "param-value": "${service-instance-id}"
+ },
+ {
+ "param-name": "prefix-id",
+ "param-value": "${private-prefix-id}"
+ },
+ {
+ "param-name": "vf-module-id",
+ "param-value": "${vf-module-id}"
+ },
+ {
+ "param-name": "external_key",
+ "param-value": "${vf-module-id}-vfw_private_ip_2"
+ }
+ ],
+ "output-key-mapping": [
+ {
+ "resource-name": "vfw_private_ip_2",
+ "resource-value": "${vfw_private_ip_2}"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "capability-name": "unresolved-composite-data",
+ "key-mapping": [
+ {
+ "output-key-mapping": [
+ {
+ "resource-name": "KEY",
+ "resource-value": "${vnf_name}"
+ },
+ {
+ "resource-name": "vf-module-name",
+ "resource-value": "${vf_module_name}"
+ },
+ {
+ "resource-name": "vnfc-name",
+ "resource-value": "${vfw_name_0}"
+ },
+ {
+ "resource-name": "ipv4-oam-address",
+ "resource-value": "${vfw_private_ip_2}"
+ },
+ {
+ "resource-name": "ipv4-oam-address-prefix",
+ "resource-value": "${onap_private_net_cidr}"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+} \ No newline at end of file
diff --git a/components/model-catalog/blueprint-model/service-blueprint/vFW/Templates/vpg.vtl b/components/model-catalog/blueprint-model/service-blueprint/vFW/Templates/vpg.vtl
new file mode 100644
index 00000000..f7e3780a
--- /dev/null
+++ b/components/model-catalog/blueprint-model/service-blueprint/vFW/Templates/vpg.vtl
@@ -0,0 +1,315 @@
+{
+ "resource-accumulator-resolved-data": [
+ {
+ "param-name": "service-instance-id",
+ "param-value": "${service-instance-id}"
+ },
+ {
+ "param-name": "vnf_id",
+ "param-value": "${vnf-id}"
+ },
+ {
+ "param-name": "vnf_name",
+ "param-value": "${vnf-name}"
+ },
+ {
+ "param-name": "vnf_model_customization_uuid",
+ "param-value": "${vnf-model-customization-uuid}"
+ },
+ {
+ "param-name": "vf_module_id",
+ "param-value": "${vf-module-id}"
+ },
+ {
+ "param-name": "vf_module_type",
+ "param-value": "${vf-module-type}"
+ },
+ {
+ "param-name": "vf_module_customization_uuid",
+ "param-value": "${vf-module-model-customization-uuid}"
+ },
+ {
+ "param-name": "vfc_customization_uuid",
+ "param-value": "${vfccustomizationuuid}"
+ },
+ {
+ "param-name": "aic-cloud-region",
+ "param-value": "${aic-cloud-region}"
+ },
+ {
+ "param-name": "vm-type",
+ "param-value": "${vm-type}"
+ },
+ {
+ "param-name": "vnfc-model-customization-uuid",
+ "param-value": "${vfccustomizationuuid}"
+ },
+ {
+ "param-name": "vnfc-model-invariant-uuid",
+ "param-value": "${vnfc-model-invariant-uuid}"
+ },
+ {
+ "param-name": "vnfc-model-version",
+ "param-value": "${vnfc-model-version}"
+ },
+ {
+ "param-name": "nfc-function",
+ "param-value": "${nf-role}"
+ },
+ {
+ "param-name": "nfc-naming-code",
+ "param-value": "${nfc-naming-code}"
+ },
+ {
+ "param-name": "cloud_env",
+ "param-value": "openstack"
+ },
+ {
+ "param-name": "repo_url_artifacts",
+ "param-value": "https://nexus.onap.org/content/groups/staging"
+ },
+ {
+ "param-name": "repo_url_blob",
+ "param-value": "https://nexus.onap.org/content/repositories/raw"
+ },
+ {
+ "param-name": "dcae_collector_port",
+ "param-value": "8080"
+ },
+ {
+ "param-name": "image_name",
+ "param-value": "${image_name}"
+ },
+ {
+ "param-name": "flavor_name",
+ "param-value": "m1.medium"
+ },
+ {
+ "param-name": "key_name",
+ "param-value": "${key_name}"
+ },
+ {
+ "param-name": "pub_key",
+ "param-value": "${pub_key}"
+ },
+ {
+ "param-name": "install_script_version",
+ "param-value": "1.2.1-SNAPSHOT"
+ },
+ {
+ "param-name": "demo_artifacts_version",
+ "param-value": "1.2.1-SNAPSHOT"
+ },
+ {
+ "param-name": "dcae_collector_ip",
+ "param-value": "10.0.4.1"
+ },
+ {
+ "param-name": "public_net_id",
+ "param-value": "${public_net_id}"
+ },
+ {
+ "param-name": "protected_private_net_id",
+ "param-value": "zdfw1fwl01_protected"
+ },
+ {
+ "param-name": "onap_private_net_id",
+ "param-value": "${onap_private_net_id}"
+ },
+ {
+ "param-name": "onap_private_subnet_id",
+ "param-value": "${onap_private_subnet_id}"
+ },
+ {
+ "param-name": "unprotected_private_net_id",
+ "param-value": "${vnf-name}_unprotected"
+ },
+ {
+ "param-name": "unprotected_private_subnet_id",
+ "param-value": "${vnf-name}_unprotected_sub"
+ },
+ {
+ "param-name": "unprotected_private_net_cidr",
+ "param-value": "${unprotected_private_net_cidr}"
+ },
+ {
+ "param-name": "protected_private_subnet_id",
+ "param-value": "${vnf-name}_protected_sub"
+ },
+ {
+ "param-name": "protected_private_net_id",
+ "param-value": "${vnf-name}_protected"
+ },
+ {
+ "param-name": "onap_private_net_cidr",
+ "param-value": "${onap_private_net_cidr}"
+ },
+ {
+ "param-name": "vfw_private_ip_0",
+ "param-value": "${vfw_private_ip_0}"
+ },
+ {
+ "param-name": "vsn_private_ip_0",
+ "param-value": "${vsn_private_ip_0}"
+ },
+ {
+ "param-name": "nexus_artifact_repo",
+ "param-value": "${nexus_artifact_repo}"
+ },
+ {
+ "param-name": "sec_group",
+ "param-value": "${sec_group}"
+ },
+ {
+ "param-name": "vpg_private_ip_0",
+ "param-value": "${vpg_private_ip_0}"
+ }
+ ],
+ "capability-data": [
+ {
+ "capability-name": "generate-name",
+ "key-mapping": [
+ {
+ "payload": [
+ {
+ "param-name": "resource-name",
+ "param-value": "vpg_name_0"
+ },
+ {
+ "param-name": "resource-value",
+ "param-value": "${vpg_name_0}"
+ },
+ {
+ "param-name": "external-key",
+ "param-value": "${vf-module-id}_vpg_name_0"
+ },
+ {
+ "param-name": "policy-instance-name",
+ "param-value": "${vf-naming-policy}"
+ },
+ {
+ "param-name": "nf-role",
+ "param-value": "${nf-role}"
+ },
+ {
+ "param-name": "naming-type",
+ "param-value": "VNFC"
+ },
+ {
+ "param-name": "VNF_NAME",
+ "param-value": "${vnf-name}"
+ },
+ {
+ "param-name": "NFC_NAMING_CODE",
+ "param-value": "${nfc-naming-code}"
+ }
+ ],
+ "output-key-mapping": [
+ {
+ "resource-name": "vpg_name_0",
+ "resource-value": "${vpg_name_0}"
+ }
+ ]
+ },
+ {
+ "payload": [
+ {
+ "param-name": "resource-name",
+ "param-value": "vf_module_name"
+ },
+ {
+ "param-name": "resource-value",
+ "param-value": "${vf_module_name}"
+ },
+ {
+ "param-name": "external-key",
+ "param-value": "${vf-module-id}_vf_module_name"
+ },
+ {
+ "param-name": "policy-instance-name",
+ "param-value": "${vf-naming-policy}"
+ },
+ {
+ "param-name": "nf-role",
+ "param-value": "${nf-role}"
+ },
+ {
+ "param-name": "naming-type",
+ "param-value": "VF-MODULE"
+ },
+ {
+ "param-name": "VNF_NAME",
+ "param-value": "${vnf-name}"
+ },
+ {
+ "param-name": "VF_MODULE_LABEL",
+ "param-value": "${vf-module-label}"
+ },
+ {
+ "param-name": "VF_MODULE_TYPE",
+ "param-value": "${vf-module-type}"
+ }
+ ],
+ "output-key-mapping": [
+ {
+ "resource-name": "vf_module_name",
+ "resource-value": "${vf_module_name}"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "capability-name": "netbox-ip-assign",
+ "key-mapping": [
+ {
+ "payload": [
+ {
+ "param-name": "service-instance-id",
+ "param-value": "${service-instance-id}"
+ },
+ {
+ "param-name": "prefix-id",
+ "param-value": "${private-prefix-id}"
+ },
+ {
+ "param-name": "vf-module-id",
+ "param-value": "${vf-module-id}"
+ },
+ {
+ "param-name": "external_key",
+ "param-value": "${vf-module-id}-vpg_private_ip_1"
+ }
+ ],
+ "output-key-mapping": [
+ {
+ "resource-name": "vpg_private_ip_1",
+ "resource-value": "${vpg_private_ip_1}"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "capability-name": "unresolved-composite-data",
+ "key-mapping": [
+ {
+ "output-key-mapping": [
+ {
+ "resource-name": "vf-module-name",
+ "resource-value": "${vf_module_name}"
+ },
+ {
+ "resource-name": "vnfc-name",
+ "resource-value": "${vpg_name_0}"
+ },
+ {
+ "resource-name": "ipv4-oam-address-prefix",
+ "resource-value": "${onap_private_net_cidr}"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+} \ No newline at end of file
diff --git a/components/model-catalog/blueprint-model/service-blueprint/vFW/Templates/vsn.vtl b/components/model-catalog/blueprint-model/service-blueprint/vFW/Templates/vsn.vtl
new file mode 100644
index 00000000..727427a6
--- /dev/null
+++ b/components/model-catalog/blueprint-model/service-blueprint/vFW/Templates/vsn.vtl
@@ -0,0 +1,311 @@
+{
+ "resource-accumulator-resolved-data": [
+ {
+ "param-name": "service-instance-id",
+ "param-value": "${service-instance-id}"
+ },
+ {
+ "param-name": "vnf_id",
+ "param-value": "${vnf-id}"
+ },
+ {
+ "param-name": "vnf_name",
+ "param-value": "${vnf-name}"
+ },
+ {
+ "param-name": "vnf_model_customization_uuid",
+ "param-value": "${vnf-model-customization-uuid}"
+ },
+ {
+ "param-name": "vf_module_id",
+ "param-value": "${vf-module-id}"
+ },
+ {
+ "param-name": "vf_module_type",
+ "param-value": "${vf-module-type}"
+ },
+ {
+ "param-name": "vf_module_customization_uuid",
+ "param-value": "${vf-module-model-customization-uuid}"
+ },
+ {
+ "param-name": "vfc_customization_uuid",
+ "param-value": "${vfccustomizationuuid}"
+ },
+ {
+ "param-name": "aic-cloud-region",
+ "param-value": "${aic-cloud-region}"
+ },
+ {
+ "param-name": "vm-type",
+ "param-value": "${vm-type}"
+ },
+ {
+ "param-name": "vnfc-model-customization-uuid",
+ "param-value": "${vfccustomizationuuid}"
+ },
+ {
+ "param-name": "vnfc-model-invariant-uuid",
+ "param-value": "${vnfc-model-invariant-uuid}"
+ },
+ {
+ "param-name": "vnfc-model-version",
+ "param-value": "${vnfc-model-version}"
+ },
+ {
+ "param-name": "nfc-function",
+ "param-value": "${nf-role}"
+ },
+ {
+ "param-name": "nfc-naming-code",
+ "param-value": "${nfc-naming-code}"
+ },
+ {
+ "param-name": "cloud_env",
+ "param-value": "openstack"
+ },
+ {
+ "param-name": "repo_url_artifacts",
+ "param-value": "https://nexus.onap.org/content/groups/staging"
+ },
+ {
+ "param-name": "repo_url_blob",
+ "param-value": "https://nexus.onap.org/content/repositories/raw"
+ },
+ {
+ "param-name": "dcae_collector_port",
+ "param-value": "8080"
+ },
+ {
+ "param-name": "image_name",
+ "param-value": "${image_name}"
+ },
+ {
+ "param-name": "flavor_name",
+ "param-value": "m1.medium"
+ },
+ {
+ "param-name": "install_script_version",
+ "param-value": "1.2.1-SNAPSHOT"
+ },
+ {
+ "param-name": "key_name",
+ "param-value": "${key_name}"
+ },
+ {
+ "param-name": "pub_key",
+ "param-value": "${pub_key}"
+ },
+ {
+ "param-name": "demo_artifacts_version",
+ "param-value": "1.2.1-SNAPSHOT"
+ },
+ {
+ "param-name": "dcae_collector_ip",
+ "param-value": "10.0.4.1"
+ },
+ {
+ "param-name": "public_net_id",
+ "param-value": "${public_net_id}"
+ },
+ {
+ "param-name": "unprotected_private_net_id",
+ "param-value": "${vnf-name}_unprotected"
+ },
+ {
+ "param-name": "protected_private_subnet_id",
+ "param-value": "${vnf-name}_protected_sub"
+ },
+ {
+ "param-name": "protected_private_net_id",
+ "param-value": "${vnf-name}_protected"
+ },
+ {
+ "param-name": "onap_private_net_id",
+ "param-value": "${onap_private_net_id}"
+ },
+ {
+ "param-name": "onap_private_subnet_id",
+ "param-value": "${onap_private_subnet_id}"
+ },
+ {
+ "param-name": "unprotected_private_net_cidr",
+ "param-value": "${unprotected_private_net_cidr}"
+ },
+ {
+ "param-name": "protected_private_net_cidr",
+ "param-value": "${protected_private_net_cidr}"
+ },
+ {
+ "param-name": "onap_private_net_cidr",
+ "param-value": "${onap_private_net_cidr}"
+ },
+ {
+ "param-name": "nexus_artifact_repo",
+ "param-value": "${nexus_artifact_repo}"
+ },
+ {
+ "param-name": "sec_group",
+ "param-value": "${sec_group}"
+ },
+ {
+ "param-name": "vfw_private_ip_1",
+ "param-value": "${vfw_private_ip_1}"
+ }
+ ],
+ "capability-data": [
+ {
+ "capability-name": "generate-name",
+ "key-mapping": [
+ {
+ "payload": [
+ {
+ "param-name": "resource-name",
+ "param-value": "vsn_name_0"
+ },
+ {
+ "param-name": "resource-value",
+ "param-value": "${vsn_name_0}"
+ },
+ {
+ "param-name": "external-key",
+ "param-value": "${vf-module-id}_vsn_name_0"
+ },
+ {
+ "param-name": "policy-instance-name",
+ "param-value": "${vf-naming-policy}"
+ },
+ {
+ "param-name": "nf-role",
+ "param-value": "${nf-role}"
+ },
+ {
+ "param-name": "naming-type",
+ "param-value": "VNFC"
+ },
+ {
+ "param-name": "VNF_NAME",
+ "param-value": "${vnf-name}"
+ },
+ {
+ "param-name": "NFC_NAMING_CODE",
+ "param-value": "${nfc-naming-code}"
+ }
+ ],
+ "output-key-mapping": [
+ {
+ "resource-name": "vsn_name_0",
+ "resource-value": "${vsn_name_0}"
+ }
+ ]
+ },
+ {
+ "payload": [
+ {
+ "param-name": "resource-name",
+ "param-value": "vf_module_name"
+ },
+ {
+ "param-name": "resource-value",
+ "param-value": "${vf_module_name}"
+ },
+ {
+ "param-name": "external-key",
+ "param-value": "${vf-module-id}_vf_module_name"
+ },
+ {
+ "param-name": "policy-instance-name",
+ "param-value": "${vf-naming-policy}"
+ },
+ {
+ "param-name": "nf-role",
+ "param-value": "${nf-role}"
+ },
+ {
+ "param-name": "naming-type",
+ "param-value": "VF-MODULE"
+ },
+ {
+ "param-name": "VNF_NAME",
+ "param-value": "${vnf-name}"
+ },
+ {
+ "param-name": "VF_MODULE_LABEL",
+ "param-value": "${vf-module-label}"
+ },
+ {
+ "param-name": "VF_MODULE_TYPE",
+ "param-value": "${vf-module-type}"
+ }
+ ],
+ "output-key-mapping": [
+ {
+ "resource-name": "vf_module_name",
+ "resource-value": "${vf_module_name}"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "capability-name": "netbox-ip-assign",
+ "key-mapping": [
+ {
+ "payload": [
+ {
+ "param-name": "service-instance-id",
+ "param-value": "${service-instance-id}"
+ },
+ {
+ "param-name": "prefix-id",
+ "param-value": "${private-prefix-id}"
+ },
+ {
+ "param-name": "vf-module-id",
+ "param-value": "${vf-module-id}"
+ },
+ {
+ "param-name": "external_key",
+ "param-value": "${vf-module-id}-vsn_private_ip_1"
+ }
+ ],
+ "output-key-mapping": [
+ {
+ "resource-name": "vsn_private_ip_1",
+ "resource-value": "${vsn_private_ip_1}"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "capability-name": "unresolved-composite-data",
+ "key-mapping": [
+ {
+ "output-key-mapping": [
+ {
+ "resource-name": "volume-group-name",
+ "resource-value": "${volume_group_name}"
+ },
+ {
+ "resource-name": "vf-module-name",
+ "resource-value": "${vf_module_name}"
+ },
+ {
+ "resource-name": "vnfc-name",
+ "resource-value": "${vsn_name_0}"
+ },
+ {
+ "resource-name": "ipv4-oam-address",
+ "resource-value": "${vsn_private_ip_1}"
+ },
+ {
+ "resource-name": "ipv4-oam-address-prefix",
+ "resource-value": "${onap_private_net_cidr}"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+} \ No newline at end of file
diff --git a/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Definitions/activation-blueprint.json b/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Definitions/activation-blueprint.json
new file mode 100644
index 00000000..4c1ca4a5
--- /dev/null
+++ b/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Definitions/activation-blueprint.json
@@ -0,0 +1,388 @@
+{
+ "metadata": {
+ "template_author": "Brinda Santh Muthuramalingam",
+ "author-email": "brindasanth@gmail.com",
+ "user-groups": "ADMIN, OPERATION",
+ "template_name": "baseconfiguration",
+ "template_version": "1.0.0",
+ "template_tags": "brinda, tosca"
+ },
+ "topology_template": {
+ "inputs": {
+ "request-id": {
+ "required": true,
+ "type": "string"
+ },
+ "action-name": {
+ "required": true,
+ "type": "string"
+ },
+ "scope-type": {
+ "required": true,
+ "type": "string"
+ },
+ "hostname": {
+ "required": true,
+ "type": "string"
+ }
+ },
+ "node_templates": {
+ "activate-process": {
+ "type": "bpmn-activate",
+ "properties": {
+ "process-name": {
+ "get_input": "action-name"
+ },
+ "version": {
+ "get_property": [
+ "SELF",
+ "process-name"
+ ]
+ },
+ "content": {
+ "get_artifact": [
+ "SELF",
+ "activate-process"
+ ]
+ }
+ },
+ "artifacts": {
+ "activate-process": {
+ "type": "artifact-bpmn-camunda",
+ "file": "Plans/ActivateProcess.bpmn"
+ }
+ }
+ },
+ "resource-assignment": {
+ "type": "component-resource-assignment",
+ "properties": {
+ "request-id": "1234"
+ },
+ "interfaces": {
+ "DefaultComponentNode": {
+ "operations": {
+ "process": {
+ "inputs": {
+ "action-name": {
+ "get_input": "action-name"
+ },
+ "resource-type": "vnf-type",
+ "request-id": {
+ "get_input": "request-id"
+ },
+ "resource-id": {
+ "get_input": "hostname"
+ },
+ "template-content": {
+ "get_artifact": [
+ "SELF",
+ "baseconfig-template"
+ ]
+ },
+ "mapping-content": {
+ "get_artifact": [
+ "SELF",
+ "baseconfig-mapping"
+ ]
+ }
+ },
+ "outputs": {
+ "resource-assignment-params": "",
+ "status": ""
+ }
+ }
+ }
+ }
+ },
+ "artifacts": {
+ "baseconfig-template": {
+ "type": "artifact-template-velocity",
+ "file": "Templates/baseconfig-template.vtl"
+ },
+ "baseconfig-mapping": {
+ "type": "artifact-mapping-resource",
+ "file": "Mappings/baseconfig-mapping.json"
+ }
+ }
+ },
+ "resource-assignment-py": {
+ "type": "component-resource-assignment",
+ "properties": {
+ "request-id": "1234"
+ },
+ "interfaces": {
+ "DefaultComponentNode": {
+ "operations": {
+ "process": {
+ "implementation": {
+ "primary": "component-script"
+ },
+ "inputs": {
+ "action-name": {
+ "get_input": "action-name"
+ }
+ },
+ "outputs": {
+ "resource-assignment-params": "",
+ "status": ""
+ }
+ }
+ }
+ }
+ },
+ "artifacts": {
+ "component-script": {
+ "type": "artifact-script-python",
+ "file": "Scripts/baseconfig-template.vtl"
+ }
+ }
+ }
+ },
+ "workflows": {
+ "activate-process": {
+ "steps": {
+ "call-resource-assignment": {
+ "description": "Invoke Resource Assignment Component",
+ "target": "resource-assignment",
+ "activities": [
+ {
+ "call_operation": "ResourceAssignmentNode.process"
+ }
+ ],
+ "on_success": [
+ "download-baseconfig"
+ ]
+ },
+ "download-baseconfig": {
+ "description": "Call Download Base Config Component",
+ "target": "activate-netconf",
+ "activities": [
+ {
+ "call_operation": "NetconfTransactionNode.process"
+ }
+ ],
+ "on_success": [
+ "download-licence"
+ ]
+ },
+ "download-licence": {
+ "description": "Call Download Licence Component",
+ "target": "activate-netconf",
+ "activities": [
+ {
+ "call_operation": "NetconfTransactionNode.process"
+ }
+ ]
+ }
+ }
+ }
+ }
+ },
+ "artifact_types": {
+ "artifact-template-velocity": {
+ "description": " Velocity Template used for Configuration",
+ "version": "1.0.0",
+ "file_ext": [
+ "vtl"
+ ],
+ "derived_from": "tosca.artifacts.Implementation"
+ },
+ "artifact-mapping-resource": {
+ "description": " Velocity Template Resource Mapping File used along with Configuration template",
+ "version": "1.0.0",
+ "file_ext": [
+ "json"
+ ],
+ "derived_from": "tosca.artifacts.Implementation"
+ },
+ "artifact-script-kotlin": {
+ "description": " Kotlin Script Template used for Configuration",
+ "version": "1.0.0",
+ "file_ext": [
+ "kt"
+ ],
+ "derived_from": "tosca.artifacts.Implementation"
+ },
+ "artifact-script-python": {
+ "description": " Kotlin Script Template used for Configuration",
+ "version": "1.0.0",
+ "file_ext": [
+ "py"
+ ],
+ "derived_from": "tosca.artifacts.Implementation"
+ },
+ "artifact-bpmn-camunda": {
+ "description": " Camunda BPM File",
+ "version": "1.0.0",
+ "file_ext": [
+ "bpmn"
+ ],
+ "derived_from": "tosca.artifacts.Implementation"
+ },
+ "artifact-component-jar": {
+ "description": "Component Jar",
+ "version": "1.0.0",
+ "file_ext": [
+ "jar"
+ ],
+ "derived_from": "tosca.artifacts.Implementation"
+ }
+ },
+ "node_types": {
+ "bpmn-activate": {
+ "description": "This is BPMN Activate node type",
+ "version": "1.0.0",
+ "properties": {
+ "content": {
+ "required": false,
+ "type": "string"
+ },
+ "process-name": {
+ "required": false,
+ "type": "string"
+ },
+ "version": {
+ "required": false,
+ "type": "string",
+ "default": "LATEST"
+ }
+ },
+ "derived_from": "tosca.nodes.DG"
+ },
+ "tosca.nodes.Component": {
+ "description": "This is Resource Assignment Component API",
+ "version": "1.0.0",
+ "derived_from": "tosca.nodes.Root"
+ },
+ "tosca.nodes.DG": {
+ "description": "This is Directed Graph Node Type",
+ "version": "1.0.0",
+ "derived_from": "tosca.nodes.Root"
+ },
+ "tosca.nodes.component.Python": {
+ "description": "This is Resource Assignment Python Component API",
+ "version": "1.0.0",
+ "derived_from": "tosca.nodes.Root"
+ },
+ "component-resource-assignment": {
+ "description": "This is Resource Assignment Component API",
+ "version": "1.0.0",
+ "properties": {
+ "request-id": {
+ "description": "Request Id used to store the generated configuration, in the database along with the template-name",
+ "required": true,
+ "type": "string"
+ }
+ },
+ "interfaces": {
+ "DefaultComponentNode": {
+ "operations": {
+ "process": {
+ "inputs": {
+ "action-name": {
+ "description": "Recipe 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": {
+ "required": false,
+ "type": "string"
+ },
+ "request-id": {
+ "description": "Request Id used to store the generated configuration, in the database along with the template-name",
+ "required": true,
+ "type": "string"
+ },
+ "resource-id": {
+ "description": "Id used to pull the data content from the data base. Either template-data or resource-id should be present",
+ "required": true,
+ "type": "string"
+ },
+ "template-content": {
+ "description": "Id used to pull the data content from the data base. Either template-data or resource-id should be present",
+ "required": true,
+ "type": "string"
+ },
+ "mapping-content": {
+ "description": "Id used to pull the data content from the data base. Either template-data or resource-id should be present",
+ "required": true,
+ "type": "string"
+ }
+ },
+ "outputs": {
+ "resource-assignment-params": {
+ "required": true,
+ "type": "string"
+ },
+ "status": {
+ "required": true,
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ },
+ "derived_from": "tosca.nodes.Component"
+ },
+ "component-resource-assignment-python": {
+ "description": "This is Resource Assignment Component API",
+ "version": "1.0.0",
+ "properties": {
+ "request-id": {
+ "description": "Request Id used to store the generated configuration, in the database along with the template-name",
+ "required": true,
+ "type": "string"
+ }
+ },
+ "interfaces": {
+ "DefaultComponentNode": {
+ "operations": {
+ "process": {
+ "inputs": {
+ "action-name": {
+ "description": "Recipe 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"
+ }
+ },
+ "outputs": {
+ "resource-assignment-params": {
+ "required": true,
+ "type": "string"
+ },
+ "status": {
+ "required": true,
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ },
+ "derived_from": "tosca.nodes.component.Python"
+ }
+ },
+ "data_types": {
+ "sample-property": {
+ "description": "This is sample data type",
+ "version": "1.0.0",
+ "properties": {
+ "content": {
+ "required": false,
+ "type": "string"
+ },
+ "process-name": {
+ "required": false,
+ "type": "string"
+ },
+ "version": {
+ "required": false,
+ "type": "string",
+ "default": "LATEST"
+ }
+ },
+ "derived_from": "tosca.datatypes.Root"
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Mappings/baseconfig-mapping.json b/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Mappings/baseconfig-mapping.json
new file mode 100644
index 00000000..caee773b
--- /dev/null
+++ b/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Mappings/baseconfig-mapping.json
@@ -0,0 +1,3 @@
+{
+ "assignments": "Sample Assignments"
+} \ No newline at end of file
diff --git a/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Plans/ActivateProcess.bpmn b/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Plans/ActivateProcess.bpmn
new file mode 100644
index 00000000..89ae342f
--- /dev/null
+++ b/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Plans/ActivateProcess.bpmn
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL"
+ xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI"
+ xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC"
+ xmlns:camunda="http://camunda.org/schema/1.0/bpmn"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="Definitions_1"
+ targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="1.11.2">
+ <bpmn:process id="ActivateProcess" isExecutable="true">
+ <bpmn:startEvent id="StartEvent_1">
+ <bpmn:outgoing>SequenceFlow_0l0dq58</bpmn:outgoing>
+ </bpmn:startEvent>
+ <bpmn:endEvent id="EndEvent_1pr0kil">
+ <bpmn:incoming>SequenceFlow_1ay0k6p</bpmn:incoming>
+ </bpmn:endEvent>
+ <bpmn:sequenceFlow id="SequenceFlow_0l0dq58" sourceRef="StartEvent_1" targetRef="activate_device_task"/>
+ <bpmn:sequenceFlow id="SequenceFlow_1ay0k6p" sourceRef="activate_device_task" targetRef="EndEvent_1pr0kil"/>
+ <bpmn:serviceTask id="activate_device_task" name="Activate Device"
+ camunda:delegateExpression="${componentDelegateService}">
+ <bpmn:extensionElements>
+ <camunda:inputOutput>
+ <camunda:inputParameter name="selector"><![CDATA[resource-assignment
+]]></camunda:inputParameter>
+ </camunda:inputOutput>
+ </bpmn:extensionElements>
+ <bpmn:incoming>SequenceFlow_0l0dq58</bpmn:incoming>
+ <bpmn:outgoing>SequenceFlow_1ay0k6p</bpmn:outgoing>
+ </bpmn:serviceTask>
+ </bpmn:process>
+ <bpmndi:BPMNDiagram id="BPMNDiagram_1">
+ <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="ActivateProcess">
+ <bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="StartEvent_1">
+ <dc:Bounds x="175" y="143" width="36" height="36"/>
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="148" y="179" width="90" height="20"/>
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="EndEvent_1pr0kil_di" bpmnElement="EndEvent_1pr0kil">
+ <dc:Bounds x="575" y="114" width="36" height="36"/>
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="593" y="154" width="0" height="12"/>
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNEdge id="SequenceFlow_0l0dq58_di" bpmnElement="SequenceFlow_0l0dq58">
+ <di:waypoint xsi:type="dc:Point" x="211" y="161"/>
+ <di:waypoint xsi:type="dc:Point" x="273" y="161"/>
+ <di:waypoint xsi:type="dc:Point" x="273" y="149"/>
+ <di:waypoint xsi:type="dc:Point" x="334" y="149"/>
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="288" y="149" width="0" height="12"/>
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="SequenceFlow_1ay0k6p_di" bpmnElement="SequenceFlow_1ay0k6p">
+ <di:waypoint xsi:type="dc:Point" x="434" y="149"/>
+ <di:waypoint xsi:type="dc:Point" x="505" y="149"/>
+ <di:waypoint xsi:type="dc:Point" x="505" y="132"/>
+ <di:waypoint xsi:type="dc:Point" x="575" y="132"/>
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="520" y="134.5" width="0" height="12"/>
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNShape id="ServiceTask_0e8ek4f_di" bpmnElement="activate_device_task">
+ <dc:Bounds x="334" y="109" width="100" height="80"/>
+ </bpmndi:BPMNShape>
+ </bpmndi:BPMNPlane>
+ </bpmndi:BPMNDiagram>
+</bpmn:definitions>
diff --git a/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Scripts/SamplePythonComponentNode.py b/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Scripts/SamplePythonComponentNode.py
new file mode 100644
index 00000000..fc515133
--- /dev/null
+++ b/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Scripts/SamplePythonComponentNode.py
@@ -0,0 +1,8 @@
+from com.brvith.orchestrator.core.interfaces import ComponentNode
+
+class SamplePythonComponentNode(ComponentNode):
+ def prepare(self, context, componentContext):
+ return None
+
+ def prepare(self, context, componentContext):
+ return None \ No newline at end of file
diff --git a/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Scripts/__init__.py b/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Scripts/__init__.py
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Scripts/__init__.py
diff --git a/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/TOSCA-Metadata/TOSCA.meta b/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/TOSCA-Metadata/TOSCA.meta
new file mode 100644
index 00000000..9066e484
--- /dev/null
+++ b/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/TOSCA-Metadata/TOSCA.meta
@@ -0,0 +1,8 @@
+TOSCA-Meta-File-Version: 1.0.0
+CSAR-Version: 1.0
+Created-By: Brinda Santh M
+Entry-Definitions: Definitions/activation-blueprint.json
+Template-Tags: Brinda Santh, activation-blueprint
+
+Name: Plans/ActivateProcess.bpmn
+Content-Type: application/vnd.oasis.bpmn
diff --git a/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Templates/baseconfig-template.vtl b/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Templates/baseconfig-template.vtl
new file mode 100644
index 00000000..026c5917
--- /dev/null
+++ b/components/model-catalog/blueprint-model/starter-blueprint/baseconfiguration/Templates/baseconfig-template.vtl
@@ -0,0 +1 @@
+This is Sample Velocity Template \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/artifact_type/artifact-bpmn-camunda.json b/components/model-catalog/definition-type/starter-type/artifact_type/artifact-bpmn-camunda.json
new file mode 100644
index 00000000..ac76b4f4
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/artifact_type/artifact-bpmn-camunda.json
@@ -0,0 +1,8 @@
+{
+ "description": " Camunda BPM File",
+ "version": "1.0.0",
+ "file_ext": [
+ "bpmn"
+ ],
+ "derived_from": "tosca.artifacts.Implementation"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/artifact_type/artifact-directed-graph.json b/components/model-catalog/definition-type/starter-type/artifact_type/artifact-directed-graph.json
new file mode 100644
index 00000000..7ab3a543
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/artifact_type/artifact-directed-graph.json
@@ -0,0 +1,9 @@
+{
+ "description": "Directed Graph File",
+ "version": "1.0.0",
+ "file_ext": [
+ "json",
+ "xml"
+ ],
+ "derived_from": "tosca.artifacts.Implementation"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/artifact_type/artifact-mapping-resource.json b/components/model-catalog/definition-type/starter-type/artifact_type/artifact-mapping-resource.json
new file mode 100644
index 00000000..0a3261b0
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/artifact_type/artifact-mapping-resource.json
@@ -0,0 +1,8 @@
+{
+ "description": " Velocity Template Resource Mapping File used along with Configuration template",
+ "version": "1.0.0",
+ "file_ext": [
+ "json"
+ ],
+ "derived_from": "tosca.artifacts.Implementation"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/artifact_type/artifact-script-python.json b/components/model-catalog/definition-type/starter-type/artifact_type/artifact-script-python.json
new file mode 100644
index 00000000..b48d2b62
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/artifact_type/artifact-script-python.json
@@ -0,0 +1,8 @@
+{
+ "description": " Kotlin Script Template used for Configuration",
+ "version": "1.0.0",
+ "file_ext": [
+ "py"
+ ],
+ "derived_from": "tosca.artifacts.Implementation"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/artifact_type/artifact-template-velocity.json b/components/model-catalog/definition-type/starter-type/artifact_type/artifact-template-velocity.json
new file mode 100644
index 00000000..9395d397
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/artifact_type/artifact-template-velocity.json
@@ -0,0 +1,8 @@
+{
+ "description": " Velocity Template used for Configuration",
+ "version": "1.0.0",
+ "file_ext": [
+ "vtl"
+ ],
+ "derived_from": "tosca.artifacts.Implementation"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/artifact_type/tosca.artifacts.Implementation.json b/components/model-catalog/definition-type/starter-type/artifact_type/tosca.artifacts.Implementation.json
new file mode 100644
index 00000000..5a7c9568
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/artifact_type/tosca.artifacts.Implementation.json
@@ -0,0 +1,5 @@
+{
+ "description": "TOSCA base type for implementation artifacts",
+ "version": "1.0.0",
+ "derived_from": "tosca.artifacts.Root"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/data_type/datatype-property.json b/components/model-catalog/definition-type/starter-type/data_type/datatype-property.json
new file mode 100644
index 00000000..5584b10e
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/data_type/datatype-property.json
@@ -0,0 +1,27 @@
+{
+ "version": "1.0.0",
+ "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",
+ "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"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/data_type/datatype-resource-assignment.json b/components/model-catalog/definition-type/starter-type/data_type/datatype-resource-assignment.json
new file mode 100644
index 00000000..cc9816eb
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/data_type/datatype-resource-assignment.json
@@ -0,0 +1,46 @@
+{
+ "version": "1.0.0",
+ "description": "This is Resource Assignment Data Type",
+ "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"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/data_type/dt-license-key.json b/components/model-catalog/definition-type/starter-type/data_type/dt-license-key.json
new file mode 100644
index 00000000..e9c312b7
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/data_type/dt-license-key.json
@@ -0,0 +1,11 @@
+{
+ "version": "1.0.0",
+ "description": "This is dt-plicense-key Data Type",
+ "properties": {
+ "license-key": {
+ "required": true,
+ "type": "string"
+ }
+ },
+ "derived_from": "tosca.datatypes.Root"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/data_type/dt-v4-aggregate.json b/components/model-catalog/definition-type/starter-type/data_type/dt-v4-aggregate.json
new file mode 100644
index 00000000..842a7f80
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/data_type/dt-v4-aggregate.json
@@ -0,0 +1,15 @@
+{
+ "version": "1.0.0",
+ "description": "This is dt-v4-aggregate Data Type",
+ "properties": {
+ "ipv4-address": {
+ "required": true,
+ "type": "string"
+ },
+ "ipv4-plen": {
+ "required": false,
+ "type": "integer"
+ }
+ },
+ "derived_from": "tosca.datatypes.Root"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/data_type/tosca.datatypes.Credential.json b/components/model-catalog/definition-type/starter-type/data_type/tosca.datatypes.Credential.json
new file mode 100644
index 00000000..820a5516
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/data_type/tosca.datatypes.Credential.json
@@ -0,0 +1,31 @@
+{
+ "version": "1.0.0",
+ "description": "Credential",
+ "properties": {
+ "protocol": {
+ "required": false,
+ "type": "string"
+ },
+ "token_type": {
+ "required": true,
+ "type": "string",
+ "default" : "password"
+ },
+ "token": {
+ "required": false,
+ "type": "string"
+ },
+ "keys": {
+ "required": false,
+ "type": "list",
+ "entry_schema": {
+ "type": "string"
+ }
+ },
+ "user": {
+ "required": false,
+ "type": "string"
+ }
+ },
+ "derived_from": "tosca.datatypes.Root"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/node_type/artifact-config-template.json b/components/model-catalog/definition-type/starter-type/node_type/artifact-config-template.json
new file mode 100644
index 00000000..af99d75b
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/node_type/artifact-config-template.json
@@ -0,0 +1,37 @@
+{
+ "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"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/node_type/component-config-generator.json b/components/model-catalog/definition-type/starter-type/node_type/component-config-generator.json
new file mode 100644
index 00000000..764f9e89
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/node_type/component-config-generator.json
@@ -0,0 +1,72 @@
+{
+ "description": "This is Generate Configuration Component API",
+ "version": "1.0.0",
+ "capabilities": {
+ "component-node": {
+ "type": "tosca.capabilities.Node"
+ }
+ },
+ "interfaces": {
+ "org-openecomp-sdnc-config-generator-service-ConfigGeneratorNode": {
+ "operations": {
+ "process": {
+ "inputs": {
+ "template-data": {
+ "description": "Conditional : JSON string which is used to mash with template. Either template-data or ( resource-id and resource-type ) should be present",
+ "required": false,
+ "type": "string"
+ },
+ "template-content": {
+ "description": "Conditional : Dynamic Template used to generate Configuration.",
+ "required": false,
+ "type": "string"
+ },
+ "resource-type": {
+ "description": "Conditional : resource-type used to pull the data content from the data base. Either template-data or ( resource-id and resource-type ) should be present",
+ "required": false,
+ "type": "string"
+ },
+ "request-id": {
+ "description": "Request Id used to store the generated configuration, in the database along with the template-name",
+ "required": true,
+ "type": "string"
+ },
+ "resource-id": {
+ "description": "Conditional : Id used to pull the data content from the data base. Either template-data or ( resource-id and resource-type ) should be present",
+ "required": false,
+ "type": "string"
+ },
+ "action-name": {
+ "description": "Conditional : 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"
+ },
+ "template-name": {
+ "description": "Conditional : Name of the Artifact Node Template, to get the template Content. If template-content is present, then content wont be reterived from the Artifact Node Template.",
+ "required": true,
+ "type": "string"
+ }
+ },
+ "outputs": {
+ "generated-config": {
+ "description": "Generated Configuration for the Template adn Resource Data",
+ "required": true,
+ "type": "string"
+ },
+ "mask-info": {
+ "description": "If template contains mask encription keys, then this mask-info field will be generated, This JSON Content alligns to the bean org.onap.ccsdk.apps.controllerblueprints.core.data.custom.MaskInfo ",
+ "required": false,
+ "type": "string"
+ },
+ "status": {
+ "description": "Status of the Component Execution ( success or failure )",
+ "required": true,
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ },
+ "derived_from": "tosca.nodes.Component"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/node_type/component-netconf-executor.json b/components/model-catalog/definition-type/starter-type/node_type/component-netconf-executor.json
new file mode 100644
index 00000000..240caf3f
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/node_type/component-netconf-executor.json
@@ -0,0 +1,79 @@
+{
+ "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"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/node_type/component-resource-assignment.json b/components/model-catalog/definition-type/starter-type/node_type/component-resource-assignment.json
new file mode 100644
index 00000000..d424a8e4
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/node_type/component-resource-assignment.json
@@ -0,0 +1,68 @@
+{
+ "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"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/node_type/dg-activate-netconf.json b/components/model-catalog/definition-type/starter-type/node_type/dg-activate-netconf.json
new file mode 100644
index 00000000..57667de9
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/node_type/dg-activate-netconf.json
@@ -0,0 +1,52 @@
+{
+ "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"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/node_type/dg-config-generator.json b/components/model-catalog/definition-type/starter-type/node_type/dg-config-generator.json
new file mode 100644
index 00000000..e59c34b6
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/node_type/dg-config-generator.json
@@ -0,0 +1,51 @@
+{
+ "description": "This is Activate DG for Config Generator 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-config-generator",
+ "relationship": "tosca.relationships.DependsOn"
+ }
+ },
+ "interfaces": {
+ "CONFIG": {
+ "operations": {
+ "GenerateConfiguration": {
+ "inputs": {
+ "params": {
+ "required": false,
+ "type": "list",
+ "entry_schema": {
+ "type": "datatype-property"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "derived_from": "tosca.nodes.DG"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/node_type/dg-resource-assign-activate.json b/components/model-catalog/definition-type/starter-type/node_type/dg-resource-assign-activate.json
new file mode 100644
index 00000000..ca703a79
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/node_type/dg-resource-assign-activate.json
@@ -0,0 +1,56 @@
+{
+ "description": "This is Resource Assign and Activate 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": {
+ "ra-component": {
+ "capability": "component-node",
+ "node": "component-resource-assignment",
+ "relationship": "tosca.relationships.DependsOn"
+ },
+ "netconf-component": {
+ "capability": "component-node",
+ "node": "component-netconf-executor",
+ "relationship": "tosca.relationships.DependsOn"
+ }
+ },
+ "interfaces": {
+ "CONFIG": {
+ "operations": {
+ "ResourceAssignAndActivate": {
+ "inputs": {
+ "params": {
+ "required": false,
+ "type": "list",
+ "entry_schema": {
+ "type": "datatype-property"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "derived_from": "tosca.nodes.DG"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/node_type/dg-resource-assignment.json b/components/model-catalog/definition-type/starter-type/node_type/dg-resource-assignment.json
new file mode 100644
index 00000000..9cce82a9
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/node_type/dg-resource-assignment.json
@@ -0,0 +1,51 @@
+{
+ "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"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/node_type/source-db.json b/components/model-catalog/definition-type/starter-type/node_type/source-db.json
new file mode 100644
index 00000000..661a9503
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/node_type/source-db.json
@@ -0,0 +1,44 @@
+{
+ "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"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/node_type/source-default.json b/components/model-catalog/definition-type/starter-type/node_type/source-default.json
new file mode 100644
index 00000000..13e234e1
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/node_type/source-default.json
@@ -0,0 +1,18 @@
+{
+ "description": "This is Default 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"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/node_type/source-input.json b/components/model-catalog/definition-type/starter-type/node_type/source-input.json
new file mode 100644
index 00000000..126ea30b
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/node_type/source-input.json
@@ -0,0 +1,18 @@
+{
+ "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"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/node_type/source-rest.json b/components/model-catalog/definition-type/starter-type/node_type/source-rest.json
new file mode 100644
index 00000000..f8dd8b6f
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/node_type/source-rest.json
@@ -0,0 +1,61 @@
+{
+ "description": "This is Rest Resource Source Node Type",
+ "version": "1.0.0",
+ "properties": {
+ "type": {
+ "required": false,
+ "type": "string",
+ "default": "JSON",
+ "constraints": [
+ {
+ "valid_values": [
+ "JSON"
+ ]
+ }
+ ]
+ },
+ "url-path": {
+ "required": true,
+ "type": "string"
+ },
+ "path": {
+ "required": true,
+ "type": "string"
+ },
+ "expression-type": {
+ "required": false,
+ "type": "string",
+ "default": "JSON_PATH",
+ "constraints": [
+ {
+ "valid_values": [
+ "JSON_PATH",
+ "JSON_POINTER"
+ ]
+ }
+ ]
+ },
+ "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"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.Artifact.json b/components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.Artifact.json
new file mode 100644
index 00000000..81410527
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.Artifact.json
@@ -0,0 +1,5 @@
+{
+ "description": "This is Deprecated Artifact Node Type.",
+ "version": "1.0.0",
+ "derived_from": "tosca.nodes.Root"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.Component.json b/components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.Component.json
new file mode 100644
index 00000000..bc4827b8
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.Component.json
@@ -0,0 +1,5 @@
+{
+ "description": "This is default Component Node",
+ "version": "1.0.0",
+ "derived_from": "tosca.nodes.Root"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.DG.json b/components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.DG.json
new file mode 100644
index 00000000..86728cf2
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.DG.json
@@ -0,0 +1,5 @@
+{
+ "description": "This is Directed Graph Node Type",
+ "version": "1.0.0",
+ "derived_from": "tosca.nodes.Root"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.ResourceSource.json b/components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.ResourceSource.json
new file mode 100644
index 00000000..2ef553e2
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.ResourceSource.json
@@ -0,0 +1,5 @@
+{
+ "description": "TOSCA base type for Resource Sources",
+ "version": "1.0.0",
+ "derived_from": "tosca.nodes.Root"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.Vnf.json b/components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.Vnf.json
new file mode 100644
index 00000000..acb1f2f3
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.Vnf.json
@@ -0,0 +1,5 @@
+{
+ "description": "This is VNF Node Type",
+ "version": "1.0.0",
+ "derived_from": "tosca.nodes.Root"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.component.Python.json b/components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.component.Python.json
new file mode 100644
index 00000000..7b67c8cb
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/node_type/tosca.nodes.component.Python.json
@@ -0,0 +1,5 @@
+{
+ "description": "This is Python Component",
+ "version": "1.0.0",
+ "derived_from": "tosca.nodes.Root"
+} \ No newline at end of file
diff --git a/components/model-catalog/definition-type/starter-type/node_type/vnf-netconf-device.json b/components/model-catalog/definition-type/starter-type/node_type/vnf-netconf-device.json
new file mode 100644
index 00000000..246f1770
--- /dev/null
+++ b/components/model-catalog/definition-type/starter-type/node_type/vnf-netconf-device.json
@@ -0,0 +1,42 @@
+{
+ "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"
+
+}
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/address.json b/components/model-catalog/resource-dictionary/starter-dictionary/address.json
new file mode 100755
index 00000000..11f92d76
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/address.json
@@ -0,0 +1,14 @@
+{
+ "name": "address",
+ "tags": "address",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property": {
+ "description" : "address",
+ "type": "string"
+ },
+ "sources": {
+ "input": {
+ "type": "source-input"
+ }
+ }
+}
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/aic-cloud-region.json b/components/model-catalog/resource-dictionary/starter-dictionary/aic-cloud-region.json
new file mode 100755
index 00000000..1501a9a6
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/aic-cloud-region.json
@@ -0,0 +1,15 @@
+{
+ "name" : "aic-cloud-region",
+ "tags" : "aic-cloud-region",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "aic-cloud-region",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : { }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/aic_clli.json b/components/model-catalog/resource-dictionary/starter-dictionary/aic_clli.json
new file mode 100755
index 00000000..ccbbe9d4
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/aic_clli.json
@@ -0,0 +1,15 @@
+{
+ "name" : "aic_clli",
+ "tags" : "aic_clli",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "aic_clli",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : { }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/availability_zone_0.json b/components/model-catalog/resource-dictionary/starter-dictionary/availability_zone_0.json
new file mode 100755
index 00000000..b9e07a9f
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/availability_zone_0.json
@@ -0,0 +1,15 @@
+{
+ "name" : "availability_zone_0",
+ "tags" : "availability_zone_0",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "availability_zone_0",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : { }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/db-source.json b/components/model-catalog/resource-dictionary/starter-dictionary/db-source.json
new file mode 100755
index 00000000..de46524c
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/db-source.json
@@ -0,0 +1,24 @@
+{
+ "name": "db-source",
+ "property" :{
+ "description": "name of the ",
+ "type": "string"
+ },
+ "updated-by": "brindasanth@onap.com",
+ "tags": "bundle-id, brindasanth@onap.com",
+ "sources": {
+ "db": {
+ "type": "source-db",
+ "properties": {
+ "query": "SELECT db-country, db-state FROM DEVICE_PROFILE WHERE profile_name = :profile_name",
+ "input-key-mapping": {
+ "profile_name": "profile_name"
+ },
+ "output-key-mapping": {
+ "db-country": "country",
+ "db-state": "state"
+ }
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/default-source.json b/components/model-catalog/resource-dictionary/starter-dictionary/default-source.json
new file mode 100755
index 00000000..42059ad8
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/default-source.json
@@ -0,0 +1,16 @@
+{
+ "tags": "v4-ip-type, tosca.datatypes.Root, data_type, brindasanth@onap.com",
+ "name": "default-source",
+ "property" :{
+ "description": "name of the ",
+ "type": "string"
+ },
+ "updated-by": "brindasanth@onap.com",
+ "sources": {
+ "default": {
+ "type": "source-default",
+ "properties": {
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/image_name.json b/components/model-catalog/resource-dictionary/starter-dictionary/image_name.json
new file mode 100755
index 00000000..37ef5ae1
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/image_name.json
@@ -0,0 +1,33 @@
+{
+ "name": "image_name",
+ "tags": "image_name",
+ "updated-by": "Singal, Kapil <ks220y@att.com>",
+ "property": {
+ "type": "string",
+ "description": "image_name"
+ },
+ "sources": {
+ "input": {
+ "type": "source-input"
+ },
+ "mdsal": {
+ "type": "source-rest",
+ "properties": {
+ "type": "JSON",
+ "url-path": "config/GENERIC-RESOURCE-API:services/service/$service-instance-id/service-data/vnfs/vnf/$vnf-id/vnf-data/vnf-topology/vnf-parameters-data/param/image_name",
+ "path": "/param/0/value",
+ "input-key-mapping": {
+ "service-instance-id": "service-instance-id",
+ "vnf-id": "vnf-id"
+ },
+ "output-key-mapping": {
+ "image_name": "value"
+ },
+ "key-dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ]
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/input-source.json b/components/model-catalog/resource-dictionary/starter-dictionary/input-source.json
new file mode 100755
index 00000000..6c693848
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/input-source.json
@@ -0,0 +1,16 @@
+{
+ "name": "input-source",
+ "property" :{
+ "description": "name of the ",
+ "type": "string"
+ },
+ "updated-by": "brindasanth@onap.com",
+ "tags": "input-source",
+ "sources": {
+ "input": {
+ "type": "source-input",
+ "properties": {
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/key_name.json b/components/model-catalog/resource-dictionary/starter-dictionary/key_name.json
new file mode 100755
index 00000000..1f1b3e65
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/key_name.json
@@ -0,0 +1,33 @@
+{
+ "name": "key_name",
+ "tags": "key_name",
+ "updated-by": "Singal, Kapil <ks220y@att.com>",
+ "property": {
+ "type": "string",
+ "description": "key_name"
+ },
+ "sources": {
+ "input": {
+ "type": "source-input"
+ },
+ "mdsal": {
+ "type": "source-rest",
+ "properties": {
+ "type": "JSON",
+ "url-path": "config/GENERIC-RESOURCE-API:services/service/$service-instance-id/service-data/vnfs/vnf/$vnf-id/vnf-data/vnf-topology/vnf-parameters-data/param/key_name",
+ "path": "/param/0/value",
+ "input-key-mapping": {
+ "service-instance-id": "service-instance-id",
+ "vnf-id": "vnf-id"
+ },
+ "output-key-mapping": {
+ "key_name": "value"
+ },
+ "key-dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ]
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/mdsal-source.json b/components/model-catalog/resource-dictionary/starter-dictionary/mdsal-source.json
new file mode 100755
index 00000000..300a71f1
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/mdsal-source.json
@@ -0,0 +1,34 @@
+{
+ "tags": "oam-local-ipv4-address",
+ "name": "mdsal-source",
+ "property" :{
+ "description": "based on service-instance-id,network-role,v4-ip-type and vm-type get the ipv4-gateway-prefix from the SDN-GC mdsal",
+ "type": "string"
+ },
+ "updated-by": "brindasanth@onap.com",
+ "sources": {
+ "mdsal": {
+ "type": "source-rest",
+ "properties": {
+ "type": "JSON",
+ "url-path": "config/L3VNF-API:services/service-list/$service-instance-id/service-data/vnf-topology-information/vnf-assignments/vnf-vms/$vm-type/vm-networks/$network-role/v4-assigned-ip-list/$v4-ip-type",
+ "path": "/v4-assigned-ip-list/0/v4-ip-prefix",
+ "input-key-mapping": {
+ "service-instance-id": "service-instance-id",
+ "network-role": "network-role",
+ "v4-ip-type": "v4-ip-type",
+ "vm-type": "vm-type"
+ },
+ "output-key-mapping": {
+ "oam-local-ipv4-address": "v4-ip-prefix"
+ },
+ "key-dependencies": [
+ "service-instance-id",
+ "network-role",
+ "v4-ip-type",
+ "vm-type"
+ ]
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/name_0.json b/components/model-catalog/resource-dictionary/starter-dictionary/name_0.json
new file mode 100755
index 00000000..433a3b72
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/name_0.json
@@ -0,0 +1,15 @@
+{
+ "name" : "name_0",
+ "tags" : "name_0",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "name_0",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : { }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/nexus_artifact_repo.json b/components/model-catalog/resource-dictionary/starter-dictionary/nexus_artifact_repo.json
new file mode 100755
index 00000000..6b0a79e0
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/nexus_artifact_repo.json
@@ -0,0 +1,16 @@
+{
+ "name" : "nexus_artifact_repo",
+ "tags" : "nexus_artifact_repo",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "nexus_artifact_repo",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : {
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/nf-role.json b/components/model-catalog/resource-dictionary/starter-dictionary/nf-role.json
new file mode 100755
index 00000000..819c7e60
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/nf-role.json
@@ -0,0 +1,25 @@
+{
+ "name" : "nf-role",
+ "tags" : "nf-role",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vnf/nf-role",
+ "type" : "string"
+ },
+ "sources" : {
+ "db" : {
+ "type" : "source-db",
+ "properties" : {
+ "type" : "SQL",
+ "query" : "select sdnctl.VF_MODEL.nf_role as vf_model_role from sdnctl.VF_MODEL where sdnctl.VF_MODEL.customization_uuid=:vnfmodelcustomizationuuid",
+ "input-key-mapping" : {
+ "vnfmodelcustomizationuuid" : "vnf-model-customization-uuid"
+ },
+ "output-key-mapping" : {
+ "nf-role" : "vf_model_role"
+ },
+ "key-dependencies" : [ "vnf-model-customization-uuid" ]
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/nfc-naming-code.json b/components/model-catalog/resource-dictionary/starter-dictionary/nfc-naming-code.json
new file mode 100755
index 00000000..b8279187
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/nfc-naming-code.json
@@ -0,0 +1,25 @@
+{
+ "name" : "nfc-naming-code",
+ "tags" : "nfc-naming-code",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "nfc-naming-code",
+ "type" : "string"
+ },
+ "sources" : {
+ "db" : {
+ "type" : "source-db",
+ "properties" : {
+ "type" : "SQL",
+ "query" : "select nfc_naming_code as nfc_naming_code from sdnctl.VFC_MODEL where customization_uuid=:vfccustomizationuuid",
+ "input-key-mapping" : {
+ "vfccustomizationuuid" : "vfccustomizationuuid"
+ },
+ "output-key-mapping" : {
+ "nfc-naming-code" : "nfc_naming_code"
+ },
+ "key-dependencies" : [ "vfccustomizationuuid" ]
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/onap_private_net_cidr.json b/components/model-catalog/resource-dictionary/starter-dictionary/onap_private_net_cidr.json
new file mode 100755
index 00000000..cee06015
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/onap_private_net_cidr.json
@@ -0,0 +1,21 @@
+{
+ "name" : "onap_private_net_cidr",
+ "tags" : "onap_private_net_cidr",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "onap_private_net_cidr",
+ "type" : "string"
+ },
+ "sources" : {
+ "db" : {
+ "type" : "source-db",
+ "properties" : {
+ "type" : "SQL",
+ "query" : "select sdnctl.IPAM_IP_POOL.prefix as prefix from sdnctl.IPAM_IP_POOL where description = \"private\"",
+ "output-key-mapping" : {
+ "onap_private_net_cidr" : "prefix"
+ }
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/onap_private_net_id.json b/components/model-catalog/resource-dictionary/starter-dictionary/onap_private_net_id.json
new file mode 100755
index 00000000..bb70fe3c
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/onap_private_net_id.json
@@ -0,0 +1,33 @@
+{
+ "name": "onap_private_net_id",
+ "tags": "onap_private_net_id",
+ "updated-by": "Singal, Kapil <ks220y@att.com>",
+ "property": {
+ "type": "string",
+ "description": "onap_private_net_id"
+ },
+ "sources": {
+ "input": {
+ "type": "source-input"
+ },
+ "mdsal": {
+ "type": "source-rest",
+ "properties": {
+ "type": "JSON",
+ "url-path": "config/GENERIC-RESOURCE-API:services/service/$service-instance-id/service-data/vnfs/vnf/$vnf-id/vnf-data/vnf-topology/vnf-parameters-data/param/onap_private_net_id",
+ "path": "/param/0/value",
+ "input-key-mapping": {
+ "service-instance-id": "service-instance-id",
+ "vnf-id": "vnf-id"
+ },
+ "output-key-mapping": {
+ "onap_private_net_id": "value"
+ },
+ "key-dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ]
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/onap_private_subnet_id.json b/components/model-catalog/resource-dictionary/starter-dictionary/onap_private_subnet_id.json
new file mode 100755
index 00000000..d38ceb49
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/onap_private_subnet_id.json
@@ -0,0 +1,33 @@
+{
+ "name": "onap_private_subnet_id",
+ "tags": "onap_private_subnet_id",
+ "updated-by": "Singal, Kapil <ks220y@att.com>",
+ "property": {
+ "type": "string",
+ "description": "onap_private_subnet_id"
+ },
+ "sources": {
+ "input": {
+ "type": "source-input"
+ },
+ "mdsal": {
+ "type": "source-rest",
+ "properties": {
+ "type": "JSON",
+ "url-path": "config/GENERIC-RESOURCE-API:services/service/$service-instance-id/service-data/vnfs/vnf/$vnf-id/vnf-data/vnf-topology/vnf-parameters-data/param/onap_private_subnet_id",
+ "path": "/param/0/value",
+ "input-key-mapping": {
+ "service-instance-id": "service-instance-id",
+ "vnf-id": "vnf-id"
+ },
+ "output-key-mapping": {
+ "onap_private_subnet_id": "value"
+ },
+ "key-dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ]
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/private-prefix-id.json b/components/model-catalog/resource-dictionary/starter-dictionary/private-prefix-id.json
new file mode 100755
index 00000000..5dea3e31
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/private-prefix-id.json
@@ -0,0 +1,21 @@
+{
+ "name" : "private-prefix-id",
+ "tags" : "private-prefix-id",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "private-prefix-id",
+ "type" : "string"
+ },
+ "sources" : {
+ "db" : {
+ "type" : "source-db",
+ "properties" : {
+ "type" : "SQL",
+ "query" : "select sdnctl.IPAM_IP_POOL.prefix_id as prefix_id from sdnctl.IPAM_IP_POOL where description = \"private\"",
+ "output-key-mapping" : {
+ "private-prefix-id" : "prefix_id"
+ }
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/protected-prefix-id.json b/components/model-catalog/resource-dictionary/starter-dictionary/protected-prefix-id.json
new file mode 100755
index 00000000..fb572741
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/protected-prefix-id.json
@@ -0,0 +1,21 @@
+{
+ "name" : "protected-prefix-id",
+ "tags" : "protected-prefix-id",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "protected-prefix-id",
+ "type" : "string"
+ },
+ "sources" : {
+ "db" : {
+ "type" : "source-db",
+ "properties" : {
+ "type" : "SQL",
+ "query" : "select sdnctl.IPAM_IP_POOL.prefix_id as prefix_id from sdnctl.IPAM_IP_POOL where description = \"protected\"",
+ "output-key-mapping" : {
+ "protected-prefix-id" : "prefix_id"
+ }
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/protected_private_net_cidr.json b/components/model-catalog/resource-dictionary/starter-dictionary/protected_private_net_cidr.json
new file mode 100755
index 00000000..261920fe
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/protected_private_net_cidr.json
@@ -0,0 +1,21 @@
+{
+ "name" : "protected_private_net_cidr",
+ "tags" : "protected_private_net_cidr",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "protected_private_net_cidr",
+ "type" : "string"
+ },
+ "sources" : {
+ "db" : {
+ "type" : "source-db",
+ "properties" : {
+ "type" : "SQL",
+ "query" : "select sdnctl.IPAM_IP_POOL.prefix as prefix from sdnctl.IPAM_IP_POOL where description = \"protected\"",
+ "output-key-mapping" : {
+ "protected_private_net_cidr" : "prefix"
+ }
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/protected_private_subnet_id.json b/components/model-catalog/resource-dictionary/starter-dictionary/protected_private_subnet_id.json
new file mode 100755
index 00000000..b3daadc4
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/protected_private_subnet_id.json
@@ -0,0 +1,16 @@
+{
+ "name" : "protected_private_subnet_id",
+ "tags" : "protected_private_subnet_id",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "protected_private_subnet_id",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : {
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/pub_key.json b/components/model-catalog/resource-dictionary/starter-dictionary/pub_key.json
new file mode 100755
index 00000000..ce6c2f2a
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/pub_key.json
@@ -0,0 +1,34 @@
+{
+ "name": "pub_key",
+ "tags": "pub_key",
+ "updated-by": "Singal, Kapil <ks220y@att.com>",
+ "property": {
+ "type": "string",
+ "description": "pub_key"
+ },
+ "sources": {
+ "input": {
+ "type": "source-input"
+ },
+ "mdsal": {
+ "type": "source-rest",
+ "properties": {
+ "type": "JSON",
+ "url-path": "config/GENERIC-RESOURCE-API:services/service/$service-instance-id/service-data/vnfs/vnf/$vnf-id/vnf-data/vnf-topology/vnf-parameters-data/param/pub_key",
+ "path": "/param/0/value",
+ "input-key-mapping": {
+ "service-instance-id": "service-instance-id",
+ "vnf-id": "vnf-id"
+ },
+ "output-key-mapping": {
+ "pub_key": "value"
+ },
+ "key-dependencies": [
+ "service-instance-id",
+ "vnf-id"
+ ]
+ }
+ }
+ }
+}
+
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/public_net_id.json b/components/model-catalog/resource-dictionary/starter-dictionary/public_net_id.json
new file mode 100755
index 00000000..6cc9c2e3
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/public_net_id.json
@@ -0,0 +1,14 @@
+{
+ "name": "public_net_id",
+ "tags": "public_net_id",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property": {
+ "type": "string",
+ "description" : "public_net_id"
+ },
+ "sources": {
+ "input": {
+ "type": "source-input"
+ }
+ }
+}
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/sample-db-source.json b/components/model-catalog/resource-dictionary/starter-dictionary/sample-db-source.json
new file mode 100644
index 00000000..90775aee
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/sample-db-source.json
@@ -0,0 +1,24 @@
+{
+ "name": "sample-db-source",
+ "property" :{
+ "description": "name of the ",
+ "type": "string"
+ },
+ "updated-by": "brindasanth@onap.com",
+ "tags": "db-source, brindasanth@onap.com",
+ "sources": {
+ "db": {
+ "type": "source-db",
+ "properties": {
+ "query": "SELECT db-country, db-state FROM DEVICE_PROFILE WHERE profile_name = :profile_name",
+ "input-key-mapping": {
+ "profile_name": "profile_name"
+ },
+ "output-key-mapping": {
+ "db-country": "country",
+ "db-state": "state"
+ }
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/sample-default-source.json b/components/model-catalog/resource-dictionary/starter-dictionary/sample-default-source.json
new file mode 100644
index 00000000..395b0ddd
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/sample-default-source.json
@@ -0,0 +1,16 @@
+{
+ "tags": "sample-default-source",
+ "name": "sample-default-source",
+ "property" :{
+ "description": "name of the ",
+ "type": "string"
+ },
+ "updated-by": "brindasanth@onap.com",
+ "sources": {
+ "default": {
+ "type": "source-default",
+ "properties": {
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/sample-input-source.json b/components/model-catalog/resource-dictionary/starter-dictionary/sample-input-source.json
new file mode 100644
index 00000000..73c0d408
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/sample-input-source.json
@@ -0,0 +1,17 @@
+{
+ "name": "sample-input-source",
+ "property" :{
+ "description": "name of the ",
+ "type": "string"
+ },
+ "updated-by": "brindasanth@onap.com",
+ "tags": "sample-input-source",
+ "sources": {
+ "input": {
+ "type": "source-input",
+ "properties": {
+ "key": "input-source"
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/sample-licenses.json b/components/model-catalog/resource-dictionary/starter-dictionary/sample-licenses.json
new file mode 100644
index 00000000..5834dd49
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/sample-licenses.json
@@ -0,0 +1,29 @@
+{
+ "tags": "sample-licenses",
+ "name": "sample-licenses",
+ "property": {
+ "description" : " Sample Data for licences",
+ "required": true,
+ "type": "list",
+ "entry_schema": {
+ "type": "dt-license-key"
+ }
+ },
+ "updated-by": "brindasanth@onap.com",
+ "sources": {
+ "mdsal": {
+ "type": "source-rest",
+ "properties": {
+ "type": "JSON",
+ "url-path": "config/L3VNF-API:services/service-list/",
+ "path": "/licenses",
+ "input-key-mapping": {
+ },
+ "output-key-mapping": {
+ "licenses": "licenses"
+ },
+ "key-dependencies": []
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/sample-mdsal-source.json b/components/model-catalog/resource-dictionary/starter-dictionary/sample-mdsal-source.json
new file mode 100644
index 00000000..25464d3f
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/sample-mdsal-source.json
@@ -0,0 +1,25 @@
+{
+ "tags": "sample-mdsal-source",
+ "name": "sample-mdsal-source",
+ "property": {
+ "description": "Sample sample-mdsal-source",
+ "type": "string"
+ },
+ "updated-by": "brindasanth@onap.com",
+ "sources": {
+ "mdsal": {
+ "type": "source-rest",
+ "properties": {
+ "type": "JSON",
+ "url-path": "config/L3VNF-API:services/service-list/$service-instance-id/service-data/vnf-topology-information/vnf-assignments/vnf-vms/$vm-type/vm-networks/$network-role/v4-assigned-ip-list/$v4-ip-type",
+ "path": "/v4-assigned-ip-list/0/v4-ip-prefix",
+ "input-key-mapping": {
+ },
+ "output-key-mapping": {
+ "mdsal-source": "v4-ip-prefix"
+ },
+ "key-dependencies": []
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/sample-v4-ip-type.json b/components/model-catalog/resource-dictionary/starter-dictionary/sample-v4-ip-type.json
new file mode 100644
index 00000000..055279c1
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/sample-v4-ip-type.json
@@ -0,0 +1,17 @@
+{
+ "name": "sample-v4-ip-type",
+ "property": {
+ "description": "sample-v4-ip-type",
+ "type": "string"
+ },
+ "updated-by": "brindasanth@onap.com",
+ "tags": "sample-v4-ip-type",
+ "sources": {
+ "input": {
+ "type": "source-input",
+ "properties": {
+ "key": "sample-v4-ip-type"
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/sec_group.json b/components/model-catalog/resource-dictionary/starter-dictionary/sec_group.json
new file mode 100755
index 00000000..017ba984
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/sec_group.json
@@ -0,0 +1,16 @@
+{
+ "name" : "sec_group",
+ "tags" : "sec_group",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "sec_group",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : {
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/service-instance-id.json b/components/model-catalog/resource-dictionary/starter-dictionary/service-instance-id.json
new file mode 100755
index 00000000..37b98687
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/service-instance-id.json
@@ -0,0 +1,15 @@
+{
+ "name" : "service-instance-id",
+ "tags" : "service-instance-id, tosca.datatypes.Root, data_type",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "To be provided",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : { }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/status.json b/components/model-catalog/resource-dictionary/starter-dictionary/status.json
new file mode 100755
index 00000000..47a19d09
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/status.json
@@ -0,0 +1,16 @@
+{
+ "name" : "status",
+ "tags" : "status",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "status",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : {
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/unprotected-prefix-id.json b/components/model-catalog/resource-dictionary/starter-dictionary/unprotected-prefix-id.json
new file mode 100755
index 00000000..3cb73205
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/unprotected-prefix-id.json
@@ -0,0 +1,21 @@
+{
+ "name" : "unprotected-prefix-id",
+ "tags" : "unprotected-prefix-id",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "unprotected-prefix-id",
+ "type" : "string"
+ },
+ "sources" : {
+ "db" : {
+ "type" : "source-db",
+ "properties" : {
+ "type" : "SQL",
+ "query" : "select sdnctl.IPAM_IP_POOL.prefix_id as prefix_id from sdnctl.IPAM_IP_POOL where description = \"unprotected\"",
+ "output-key-mapping" : {
+ "unprotected-prefix-id" : "prefix_id"
+ }
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/unprotected_private_net_cidr.json b/components/model-catalog/resource-dictionary/starter-dictionary/unprotected_private_net_cidr.json
new file mode 100755
index 00000000..d2a339e7
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/unprotected_private_net_cidr.json
@@ -0,0 +1,21 @@
+{
+ "name" : "unprotected_private_net_cidr",
+ "tags" : "unprotected_private_net_cidr",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "unprotected_private_net_cidr",
+ "type" : "string"
+ },
+ "sources" : {
+ "db" : {
+ "type" : "source-db",
+ "properties" : {
+ "type" : "SQL",
+ "query" : "select sdnctl.IPAM_IP_POOL.prefix as prefix from sdnctl.IPAM_IP_POOL where description = \"unprotected\"",
+ "output-key-mapping" : {
+ "unprotected_private_net_cidr" : "prefix"
+ }
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/unprotected_private_subnet_id.json b/components/model-catalog/resource-dictionary/starter-dictionary/unprotected_private_subnet_id.json
new file mode 100755
index 00000000..760d611a
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/unprotected_private_subnet_id.json
@@ -0,0 +1,16 @@
+{
+ "name" : "unprotected_private_subnet_id",
+ "tags" : "unprotected_private_subnet_id",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "unprotected_private_subnet_id",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : {
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vf-module-id.json b/components/model-catalog/resource-dictionary/starter-dictionary/vf-module-id.json
new file mode 100755
index 00000000..74f9310e
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vf-module-id.json
@@ -0,0 +1,15 @@
+{
+ "name" : "vf-module-id",
+ "tags" : "vf-module-id",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vf-module-id",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : { }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vf-module-label.json b/components/model-catalog/resource-dictionary/starter-dictionary/vf-module-label.json
new file mode 100755
index 00000000..ac5e21a6
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vf-module-label.json
@@ -0,0 +1,25 @@
+{
+ "name" : "vf-module-label",
+ "tags" : "vf-module-label",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vf-module-label",
+ "type" : "string"
+ },
+ "sources" : {
+ "db" : {
+ "type" : "source-db",
+ "properties" : {
+ "type" : "SQL",
+ "query" : "select sdnctl.VF_MODULE_MODEL.vf_module_label as vf_module_label from sdnctl.VF_MODULE_MODEL where sdnctl.VF_MODULE_MODEL.customization_uuid=:customizationid",
+ "input-key-mapping" : {
+ "customizationid" : "vf-module-model-customization-uuid"
+ },
+ "output-key-mapping" : {
+ "vf-module-label" : "vf_module_label"
+ },
+ "key-dependencies" : [ "vf-module-model-customization-uuid" ]
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vf-module-model-customization-uuid.json b/components/model-catalog/resource-dictionary/starter-dictionary/vf-module-model-customization-uuid.json
new file mode 100755
index 00000000..6736e4fe
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vf-module-model-customization-uuid.json
@@ -0,0 +1,15 @@
+{
+ "name" : "vf-module-model-customization-uuid",
+ "tags" : "vf-module-model-customization-uuid",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vf-module-model-customization-uuid",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : { }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vf-module-type.json b/components/model-catalog/resource-dictionary/starter-dictionary/vf-module-type.json
new file mode 100755
index 00000000..147425c3
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vf-module-type.json
@@ -0,0 +1,25 @@
+{
+ "name" : "vf-module-type",
+ "tags" : "vf-module-type",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vf-module-type",
+ "type" : "string"
+ },
+ "sources" : {
+ "db" : {
+ "type" : "source-db",
+ "properties" : {
+ "type" : "SQL",
+ "query" : "select vf_module_type as vf_module_type from sdnctl.VF_MODULE_MODEL where customization_uuid=:customizationid",
+ "input-key-mapping" : {
+ "customizationid" : "vf-module-model-customization-uuid"
+ },
+ "output-key-mapping" : {
+ "vf-module-type" : "vf_module_type"
+ },
+ "key-dependencies" : [ "vf-module-model-customization-uuid" ]
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vf-naming-policy.json b/components/model-catalog/resource-dictionary/starter-dictionary/vf-naming-policy.json
new file mode 100755
index 00000000..f68cc374
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vf-naming-policy.json
@@ -0,0 +1,25 @@
+{
+ "name" : "vf-naming-policy",
+ "tags" : "vf-naming-policy",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vf-naming-policy",
+ "type" : "string"
+ },
+ "sources" : {
+ "db" : {
+ "type" : "source-db",
+ "properties" : {
+ "type" : "SQL",
+ "query" : "select sdnctl.VF_MODEL.naming_policy as vf_naming_policy from sdnctl.VF_MODEL where sdnctl.VF_MODEL.customization_uuid=:vnf_model_customization_uuid",
+ "input-key-mapping" : {
+ "vnf_model_customization_uuid" : "vnf-model-customization-uuid"
+ },
+ "output-key-mapping" : {
+ "vf-naming-policy" : "vf_naming_policy"
+ },
+ "key-dependencies" : [ "vnf-model-customization-uuid" ]
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vf-nf-code.json b/components/model-catalog/resource-dictionary/starter-dictionary/vf-nf-code.json
new file mode 100755
index 00000000..1865d47f
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vf-nf-code.json
@@ -0,0 +1,25 @@
+{
+ "name" : "vf-nf-code",
+ "tags" : "vf-nf-code",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vf-nf-code",
+ "type" : "string"
+ },
+ "sources" : {
+ "db" : {
+ "type" : "source-db",
+ "properties" : {
+ "type" : "SQL",
+ "query" : "select sdnctl.VF_MODEL.nf_code as vf_nf_code from sdnctl.VF_MODEL where sdnctl.VF_MODEL.customization_uuid=:customizationid",
+ "input-key-mapping" : {
+ "customizationid" : "vnf-model-customization-uuid"
+ },
+ "output-key-mapping" : {
+ "vf-nf-code" : "vf_nf_code"
+ },
+ "key-dependencies" : [ "vnf-model-customization-uuid" ]
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vf_module_name.json b/components/model-catalog/resource-dictionary/starter-dictionary/vf_module_name.json
new file mode 100755
index 00000000..20ce458b
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vf_module_name.json
@@ -0,0 +1,15 @@
+{
+ "name" : "vf_module_name",
+ "tags" : "vf_module_name",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vf_module_name",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : { }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vfccustomizationuuid.json b/components/model-catalog/resource-dictionary/starter-dictionary/vfccustomizationuuid.json
new file mode 100755
index 00000000..463f8480
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vfccustomizationuuid.json
@@ -0,0 +1,25 @@
+{
+ "name" : "vfccustomizationuuid",
+ "tags" : "vfccustomizationuuid, tosca.datatypes.Root, data_type",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vfccustomizationuuid",
+ "type" : "string"
+ },
+ "sources" : {
+ "db" : {
+ "type" : "source-db",
+ "properties" : {
+ "type" : "SQL",
+ "query" : "select sdnctl.VF_MODULE_TO_VFC_MAPPING.vfc_customization_uuid as vnf_customid from sdnctl.VF_MODULE_TO_VFC_MAPPING where vm_count = 1 and sdnctl.VF_MODULE_TO_VFC_MAPPING.vf_module_customization_uuid=:vfmodulecustomizationuuid",
+ "input-key-mapping" : {
+ "vfmodulecustomizationuuid" : "vf-module-model-customization-uuid"
+ },
+ "output-key-mapping" : {
+ "vfccustomizationuuid" : "vnf_customid"
+ },
+ "key-dependencies" : [ "vf-module-model-customization-uuid" ]
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vfw_name_0.json b/components/model-catalog/resource-dictionary/starter-dictionary/vfw_name_0.json
new file mode 100755
index 00000000..96a97585
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vfw_name_0.json
@@ -0,0 +1,15 @@
+{
+ "name" : "vfw_name_0",
+ "tags" : "vfw_name_0",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vfw_name_0",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : { }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vfw_private_ip_0.json b/components/model-catalog/resource-dictionary/starter-dictionary/vfw_private_ip_0.json
new file mode 100755
index 00000000..71a4df2c
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vfw_private_ip_0.json
@@ -0,0 +1,33 @@
+{
+ "name" : "vfw_private_ip_0",
+ "tags" : "vfw_private_ip_0",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vfw_private_ip_0",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : {
+ }
+ },
+ "mdsal" : {
+ "type" : "source-rest",
+ "properties" : {
+ "type" : "JSON",
+ "url-path" : "config/GENERIC-RESOURCE-API:services/service/$service-instance-id/service-data/vnfs/vnf/$vnf-id/vnf-data/vnf-topology/vnf-parameters-data/param/vfw_private_ip_0",
+ "path" : "/param/0/value",
+ "expression-type" : "JSON_POINTER",
+ "input-key-mapping" : {
+ "service-instance-id" : "service-instance-id",
+ "vnf-id" : "vnf-id"
+ },
+ "output-key-mapping" : {
+ "vfw_private_ip_0" : "value"
+ },
+ "key-dependencies" : [ "service-instance-id", "vnf-id" ]
+ }
+ }
+ }
+}
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vfw_private_ip_1.json b/components/model-catalog/resource-dictionary/starter-dictionary/vfw_private_ip_1.json
new file mode 100755
index 00000000..481edae8
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vfw_private_ip_1.json
@@ -0,0 +1,33 @@
+{
+ "name" : "vfw_private_ip_1",
+ "tags" : "vfw_private_ip_1",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vfw_private_ip_1",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : {
+ }
+ },
+ "mdsal" : {
+ "type" : "source-rest",
+ "properties" : {
+ "type" : "JSON",
+ "url-path" : "config/GENERIC-RESOURCE-API:services/service/$service-instance-id/service-data/vnfs/vnf/$vnf-id/vnf-data/vnf-topology/vnf-parameters-data/param/vfw_private_ip_1",
+ "path" : "/param/0/value",
+ "expression-type" : "JSON_POINTER",
+ "input-key-mapping" : {
+ "service-instance-id" : "service-instance-id",
+ "vnf-id" : "vnf-id"
+ },
+ "output-key-mapping" : {
+ "vfw_private_ip_1" : "value"
+ },
+ "key-dependencies" : [ "service-instance-id", "vnf-id" ]
+ }
+ }
+ }
+}
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vfw_private_ip_2.json b/components/model-catalog/resource-dictionary/starter-dictionary/vfw_private_ip_2.json
new file mode 100755
index 00000000..f8adf741
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vfw_private_ip_2.json
@@ -0,0 +1,14 @@
+{
+ "name": "vfw_private_ip_2",
+ "tags": "vfw_private_ip_2",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property": {
+ "type": "string",
+ "description" : "vfw_private_ip_2"
+ },
+ "sources": {
+ "input": {
+ "type": "source-input"
+ }
+ }
+}
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vm-type.json b/components/model-catalog/resource-dictionary/starter-dictionary/vm-type.json
new file mode 100755
index 00000000..0204c64b
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vm-type.json
@@ -0,0 +1,25 @@
+{
+ "name" : "vm-type",
+ "tags" : "vm-type",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vm-type",
+ "type" : "string"
+ },
+ "sources" : {
+ "db" : {
+ "type" : "source-db",
+ "properties" : {
+ "type" : "SQL",
+ "query" : "select VFC_MODEL.vm_type as vm_type from VFC_MODEL where customization_uuid=:vfccustomizationuuid",
+ "input-key-mapping" : {
+ "vfccustomizationuuid" : "vfccustomizationuuid"
+ },
+ "output-key-mapping" : {
+ "vm-type" : "vm_type"
+ },
+ "key-dependencies" : [ "vfccustomizationuuid" ]
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vnf-id.json b/components/model-catalog/resource-dictionary/starter-dictionary/vnf-id.json
new file mode 100755
index 00000000..7f3a18ff
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vnf-id.json
@@ -0,0 +1,15 @@
+{
+ "name" : "vnf-id",
+ "tags" : "vnf-id",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vnf-id",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : { }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vnf-model-customization-uuid.json b/components/model-catalog/resource-dictionary/starter-dictionary/vnf-model-customization-uuid.json
new file mode 100755
index 00000000..2aa08c40
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vnf-model-customization-uuid.json
@@ -0,0 +1,15 @@
+{
+ "name" : "vnf-model-customization-uuid",
+ "tags" : "vnf-model-customization-uuid",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vnf-model-customization-uuid",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : { }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vnf-name.json b/components/model-catalog/resource-dictionary/starter-dictionary/vnf-name.json
new file mode 100755
index 00000000..89b3dc1c
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vnf-name.json
@@ -0,0 +1,28 @@
+{
+ "name" : "vnf-name",
+ "tags" : "vnf-name, tosca.datatypes.Root, data_type",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vnf-name",
+ "type" : "string"
+ },
+ "sources" : {
+ "mdsal" : {
+ "type" : "source-rest",
+ "properties" : {
+ "type" : "JSON",
+ "url-path" : "config/GENERIC-RESOURCE-API:services/service/$service-instance-id/service-data/vnfs/vnf/$vnf-id/vnf-data/vnf-topology/vnf-parameters-data/param/vnf_name",
+ "path" : "/param/0/value",
+ "expression-type" : "JSON_POINTER",
+ "input-key-mapping" : {
+ "service-instance-id" : "service-instance-id",
+ "vnf-id" : "vnf-id"
+ },
+ "output-key-mapping" : {
+ "vnf-name" : "value"
+ },
+ "key-dependencies" : [ "service-instance-id", "vnf-id" ]
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vnf_name.json b/components/model-catalog/resource-dictionary/starter-dictionary/vnf_name.json
new file mode 100755
index 00000000..c55f1c18
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vnf_name.json
@@ -0,0 +1,27 @@
+{
+ "name" : "vnf_name",
+ "tags" : "vnf_name",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vnf_name",
+ "type" : "string"
+ },
+ "sources" : {
+ "mdsal" : {
+ "type" : "source-rest",
+ "properties" : {
+ "type" : "JSON",
+ "url-path" : "config/GENERIC-RESOURCE-API:services/service/$service-instance-id/service-data/vnfs/vnf/$vnf-id/vnf-data/vnf-topology/vnf-parameters-data/param/vnf_name",
+ "path" : "/param/0/value",
+ "input-key-mapping" : {
+ "service-instance-id" : "service-instance-id",
+ "vnf-id" : "vnf-id"
+ },
+ "output-key-mapping" : {
+ "vnf_name" : "value"
+ },
+ "key-dependencies" : [ "service-instance-id", "vnf-id" ]
+ }
+ }
+ }
+}
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vnfc-model-invariant-uuid.json b/components/model-catalog/resource-dictionary/starter-dictionary/vnfc-model-invariant-uuid.json
new file mode 100755
index 00000000..c894fb53
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vnfc-model-invariant-uuid.json
@@ -0,0 +1,25 @@
+{
+ "name" : "vnfc-model-invariant-uuid",
+ "tags" : "vnfc-model-invariant-uuid",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vnfc-model-invariant-uuid for SRIOV VPE template",
+ "type" : "string"
+ },
+ "sources" : {
+ "db" : {
+ "type" : "source-db",
+ "properties" : {
+ "type" : "SQL",
+ "query" : "select VFC_MODEL.invariant_uuid as vfc_invariant_uuid from VFC_MODEL where customization_uuid=:vfccustomizationuuid",
+ "input-key-mapping" : {
+ "vfccustomizationuuid" : "vfccustomizationuuid"
+ },
+ "output-key-mapping" : {
+ "vnfc-model-invariant-uuid" : "vfc_invariant_uuid"
+ },
+ "key-dependencies" : [ "vfccustomizationuuid" ]
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vnfc-model-version.json b/components/model-catalog/resource-dictionary/starter-dictionary/vnfc-model-version.json
new file mode 100755
index 00000000..45eb07f7
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vnfc-model-version.json
@@ -0,0 +1,25 @@
+{
+ "name" : "vnfc-model-version",
+ "tags" : "vnfc-model-version",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vnfc-model-version for SRIOV VPE template",
+ "type" : "string"
+ },
+ "sources" : {
+ "db" : {
+ "type" : "source-db",
+ "properties" : {
+ "type" : "SQL",
+ "query" : "select VFC_MODEL.version as vnfc_model_version from VFC_MODEL where customization_uuid=:vfccustomizationuuid",
+ "input-key-mapping" : {
+ "vfccustomizationuuid" : "vfccustomizationuuid"
+ },
+ "output-key-mapping" : {
+ "vnfc-model-version" : "vnfc_model_version"
+ },
+ "key-dependencies" : [ "vfccustomizationuuid" ]
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/volume-name.json b/components/model-catalog/resource-dictionary/starter-dictionary/volume-name.json
new file mode 100755
index 00000000..3fe5ab30
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/volume-name.json
@@ -0,0 +1,15 @@
+{
+ "name" : "volume-name",
+ "tags" : "volume-name",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "volume-name",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : { }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/volume_group_name.json b/components/model-catalog/resource-dictionary/starter-dictionary/volume_group_name.json
new file mode 100755
index 00000000..90b36096
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/volume_group_name.json
@@ -0,0 +1,16 @@
+{
+ "name" : "volume_group_name",
+ "tags" : "volume_group_name",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "volume_group_name",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : {
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vpg_name_0.json b/components/model-catalog/resource-dictionary/starter-dictionary/vpg_name_0.json
new file mode 100755
index 00000000..f158d53c
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vpg_name_0.json
@@ -0,0 +1,15 @@
+{
+ "name" : "vpg_name_0",
+ "tags" : "vpg_name_0",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vpg_name_0",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : { }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vpg_private_ip_0.json b/components/model-catalog/resource-dictionary/starter-dictionary/vpg_private_ip_0.json
new file mode 100755
index 00000000..13d89993
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vpg_private_ip_0.json
@@ -0,0 +1,33 @@
+{
+ "name" : "vpg_private_ip_0",
+ "tags" : "vpg_private_ip_0",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vpg_private_ip_0",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : {
+ }
+ },
+ "mdsal" : {
+ "type" : "source-rest",
+ "properties" : {
+ "type" : "JSON",
+ "url-path" : "config/GENERIC-RESOURCE-API:services/service/$service-instance-id/service-data/vnfs/vnf/$vnf-id/vnf-data/vnf-topology/vnf-parameters-data/param/vpg_private_ip_0",
+ "path" : "/param/0/value",
+ "expression-type" : "JSON_POINTER",
+ "input-key-mapping" : {
+ "service-instance-id" : "service-instance-id",
+ "vnf-id" : "vnf-id"
+ },
+ "output-key-mapping" : {
+ "vpg_private_ip_0" : "value"
+ },
+ "key-dependencies" : [ "service-instance-id", "vnf-id" ]
+ }
+ }
+ }
+}
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vpg_private_ip_1.json b/components/model-catalog/resource-dictionary/starter-dictionary/vpg_private_ip_1.json
new file mode 100755
index 00000000..ff58f8af
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vpg_private_ip_1.json
@@ -0,0 +1,16 @@
+{
+ "name" : "vpg_private_ip_1",
+ "tags" : "vpg_private_ip_1",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vpg_private_ip_1",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : {
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vsn_name_0.json b/components/model-catalog/resource-dictionary/starter-dictionary/vsn_name_0.json
new file mode 100755
index 00000000..7b7ba457
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vsn_name_0.json
@@ -0,0 +1,15 @@
+{
+ "name" : "vsn_name_0",
+ "tags" : "vsn_name_0",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vsn_name_0",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : { }
+ }
+ }
+} \ No newline at end of file
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vsn_private_ip_0.json b/components/model-catalog/resource-dictionary/starter-dictionary/vsn_private_ip_0.json
new file mode 100755
index 00000000..fcd6d8d5
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vsn_private_ip_0.json
@@ -0,0 +1,33 @@
+{
+ "name" : "vsn_private_ip_0",
+ "tags" : "vsn_private_ip_0",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property" : {
+ "description" : "vsn_private_ip_0",
+ "type" : "string"
+ },
+ "sources" : {
+ "input" : {
+ "type" : "source-input",
+ "properties" : {
+ }
+ },
+ "mdsal" : {
+ "type" : "source-rest",
+ "properties" : {
+ "type" : "JSON",
+ "url-path" : "config/GENERIC-RESOURCE-API:services/service/$service-instance-id/service-data/vnfs/vnf/$vnf-id/vnf-data/vnf-topology/vnf-parameters-data/param/vsn_private_ip_0",
+ "path" : "/param/0/value",
+ "expression-type" : "JSON_POINTER",
+ "input-key-mapping" : {
+ "service-instance-id" : "service-instance-id",
+ "vnf-id" : "vnf-id"
+ },
+ "output-key-mapping" : {
+ "vsn_private_ip_0" : "value"
+ },
+ "key-dependencies" : [ "service-instance-id", "vnf-id" ]
+ }
+ }
+ }
+}
diff --git a/components/model-catalog/resource-dictionary/starter-dictionary/vsn_private_ip_1.json b/components/model-catalog/resource-dictionary/starter-dictionary/vsn_private_ip_1.json
new file mode 100755
index 00000000..52de69c6
--- /dev/null
+++ b/components/model-catalog/resource-dictionary/starter-dictionary/vsn_private_ip_1.json
@@ -0,0 +1,14 @@
+{
+ "name": "vsn_private_ip_1",
+ "tags": "vsn_private_ip_1",
+ "updated-by" : "Singal, Kapil <ks220y@att.com>",
+ "property": {
+ "type": "string",
+ "description" : "vsn_private_ip_1"
+ },
+ "sources": {
+ "input": {
+ "type": "source-input"
+ }
+ }
+}
diff --git a/components/parent/pom.xml b/components/parent/pom.xml
index 7377e765..7308e9d2 100644
--- a/components/parent/pom.xml
+++ b/components/parent/pom.xml
@@ -16,7 +16,8 @@
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.onap.ccsdk.apps</groupId>
@@ -28,14 +29,16 @@
<name>App Components Parent</name>
<packaging>pom</packaging>
<properties>
- <spring.boot.version>2.0.5.RELEASE</spring.boot.version>
- <spring.version>5.0.8.RELEASE</spring.version>
- <kotlin.version>1.2.70</kotlin.version>
+ <spring.boot.version>2.0.6.RELEASE</spring.boot.version>
+ <spring.version>5.0.10.RELEASE</spring.version>
+ <kotlin.version>1.3.0</kotlin.version>
+ <kotlin.couroutines.version>1.0.1</kotlin.couroutines.version>
<eelf.version>1.0.0</eelf.version>
<guava.version>26.0-jre</guava.version>
<springfox.swagger2.version>2.9.2</springfox.swagger2.version>
<h2database.version>1.4.197</h2database.version>
<onap.logger.slf4j>1.2.2</onap.logger.slf4j>
+ <powermock.version>1.7.4</powermock.version>
</properties>
<dependencyManagement>
<dependencies>
@@ -105,6 +108,11 @@
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
+ <artifactId>kotlinx-couroutines-core</artifactId>
+ <version>${kotlin.couroutines.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-reflect</artifactId>
<version>${kotlin.version}</version>
</dependency>
@@ -113,6 +121,11 @@
<artifactId>kotlin-stdlib-jdk8</artifactId>
<version>${kotlin.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.jetbrains.kotlin</groupId>
+ <artifactId>kotlin-stdlib-jdk7</artifactId>
+ <version>${kotlin.version}</version>
+ </dependency>
<!-- Database -->
@@ -131,16 +144,6 @@
</dependency>
<dependency>
<groupId>org.onap.ccsdk.apps.controllerblueprints</groupId>
- <artifactId>service</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.onap.ccsdk.apps.controllerblueprints</groupId>
- <artifactId>application</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.onap.ccsdk.apps.controllerblueprints</groupId>
<artifactId>resource-dict</artifactId>
<version>${project.version}</version>
</dependency>
@@ -149,12 +152,12 @@
<dependency>
<groupId>org.powermock</groupId>
<artifactId>powermock-api-mockito2</artifactId>
- <version>1.7.4</version>
+ <version>${powermock.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
- <artifactId>kotlin-test</artifactId>
+ <artifactId>kotlin-test-junit</artifactId>
<version>${kotlin.version}</version>
<scope>test</scope>
</dependency>
@@ -173,7 +176,7 @@
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
- </dependency>
+ </dependency>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
@@ -186,11 +189,10 @@
<groupId>com.jayway.jsonpath</groupId>
<artifactId>json-path</artifactId>
</dependency>
- <dependency>
- <groupId>com.google.guava</groupId>
- <artifactId>guava</artifactId>
- <version>26.0-jre</version>
- </dependency>
+ <dependency>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ </dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
diff --git a/components/resource-dict/pom.xml b/components/resource-dict/pom.xml
index 508ae96f..517895cb 100644
--- a/components/resource-dict/pom.xml
+++ b/components/resource-dict/pom.xml
@@ -39,7 +39,7 @@
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
- <artifactId>kotlin-test</artifactId>
+ <artifactId>kotlin-test-junit</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
diff --git a/components/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/service/ResourceDefinitionRepoService.kt b/components/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/service/ResourceDefinitionRepoService.kt
index 6c83e5f9..6d186b59 100644
--- a/components/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/service/ResourceDefinitionRepoService.kt
+++ b/components/resource-dict/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/resource/dict/service/ResourceDefinitionRepoService.kt
@@ -49,10 +49,12 @@ open class ResourceDefinitionFileRepoService : BluePrintRepoFileService,
constructor(basePath: String) : this(basePath,
basePath.plus(BluePrintConstants.PATH_DIVIDER)
- .plus(BluePrintConstants.MODEL_DIR_MODEL_TYPE))
+ .plus(BluePrintConstants.MODEL_DIR_MODEL_TYPE)
+ .plus(BluePrintConstants.PATH_DIVIDER)
+ .plus("starter-type"))
constructor(basePath: String, modelTypePath: String) : super(modelTypePath) {
- resourceDefinitionPath = basePath.plus("/resource_dictionary")
+ resourceDefinitionPath = basePath.plus("/resource-dictionary/starter-dictionary")
}
override fun getResourceDefinition(resourceDefinitionName: String): Mono<ResourceDefinition> {
diff --git a/components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/service/ResourceDefinitionRepoServiceTest.java b/components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/service/ResourceDefinitionRepoServiceTest.java
index 1772277d..6789c0e0 100644
--- a/components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/service/ResourceDefinitionRepoServiceTest.java
+++ b/components/resource-dict/src/test/java/org/onap/ccsdk/apps/controllerblueprints/resource/dict/service/ResourceDefinitionRepoServiceTest.java
@@ -25,7 +25,7 @@ public class ResourceDefinitionRepoServiceTest {
@Test
public void testGetResourceDefinition() throws Exception{
- ResourceDefinitionRepoService resourceDefinitionRepoService = new ResourceDefinitionFileRepoService("load");
+ ResourceDefinitionRepoService resourceDefinitionRepoService = new ResourceDefinitionFileRepoService("./../model-catalog");
ResourceDefinition resourceDefinition = resourceDefinitionRepoService
.getResourceDefinition("db-source").block();
Assert.assertNotNull("Failed to get Resource Definition db-source", resourceDefinition);