From bc6e714e001a8c61b06709c61b187d4e3dd22aac Mon Sep 17 00:00:00 2001 From: Samuli Silvius Date: Thu, 5 Dec 2019 14:34:48 +0200 Subject: CDS Blueprint for vFW K8s Use Case Introduce blueprint changes on top of latest vFW demo to also support multicloud/K8s plugin integration. This commit brings resource resolution part for k8s related parameters that are enough to instantiate CNF defined by Helm charts in multicloud/k8s plugin. Issue-ID: INT-1260 Signed-off-by: Samuli Silvius Change-Id: I783e364a201cda25ea812d83795ae2a4be71def9 --- heat/vFW_CNF_CDS/templates/cba-dd.json | 428 +++++++++++++++++++++++++++++++++ 1 file changed, 428 insertions(+) create mode 100644 heat/vFW_CNF_CDS/templates/cba-dd.json (limited to 'heat/vFW_CNF_CDS/templates/cba-dd.json') diff --git a/heat/vFW_CNF_CDS/templates/cba-dd.json b/heat/vFW_CNF_CDS/templates/cba-dd.json new file mode 100644 index 00000000..1d85d963 --- /dev/null +++ b/heat/vFW_CNF_CDS/templates/cba-dd.json @@ -0,0 +1,428 @@ +[ + { + "name": "k8s-rb-profile-name", + "tags": "k8s, cnf, profile", + "data_type": "string", + "description": "Profile name used in multicloud/k8s plugin to identify Helm chart(s) where this mapping is providing override values.", + "entry_schema": "string", + "updatedBy": "Samuli, Silvius ", + "definition": { + "tags": "k8s, cnf, profile", + "name": "k8s-rb-profile-name", + "property": { + "description": "Profile name used in multicloud/k8s plugin to identify Helm chart(s) where this mapping is providing override values.", + "type": "string" + }, + "updated-by": "Samuli, Silvius ", + "sources": { + "input": { + "type": "source-input" + }, + "default": { + "type": "source-default", + "properties": {} + }, + "sdnc" : { + "type" : "source-rest", + "properties" : { + "verb" : "GET", + "type" : "JSON", + "url-path" : "/restconf/config/GENERIC-RESOURCE-API:services/service/$service-instance-id/service-data/vnfs/vnf/$vnf-id/vnf-data/vnf-topology/vnf-parameters-data/param/k8s-rb-profile-name", + "path" : "/param/0/value", + "input-key-mapping" : { + "service-instance-id" : "service-instance-id", + "vnf-id" : "vnf-id" + }, + "output-key-mapping" : { + "k8s-rb-profile-name" : "value" + }, + "key-dependencies" : [ "service-instance-id", "vnf-id" ] + } + } + } + } + }, + { + "name": "vf-module-model-invariant-uuid", + "tags": "vnf, vf-module", + "data_type": "string", + "description": "vf module model invariant uuid", + "entry_schema": "string", + "updatedBy": "Samuli, Silvius ", + "definition": { + "tags": "vnf, vf-module", + "name": "vf-module-model-invariant-uuid", + "property": { + "description": "vf module model invariant uuid", + "type": "string" + }, + "updated-by": "Samuli, Silvius ", + "sources": { + "input": { + "type": "source-input" + }, + "default": { + "type": "source-default", + "properties": {} + }, + "processor-db" : { + "type" : "source-db", + "properties" : { + "type" : "SQL", + "query" : "select sdnctl.VF_MODULE_MODEL.invariant_uuid as vf_module_model_invariant_uuid 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-model-invariant-uuid" : "vf_module_model_invariant_uuid" + }, + "key-dependencies" : [ "vf-module-model-customization-uuid" ], + "endpoint-selector" : "dynamic-db-source" + } + } + } + } + }, + { + "name": "vf-module-model-version", + "tags": "vnf, vf-module", + "data_type": "string", + "description": "vf module model model version", + "entry_schema": "string", + "updatedBy": "Samuli, Silvius ", + "definition": { + "tags": "vnf, vf-module", + "name": "vf-module-model-version", + "property": { + "description": "vf module model model version", + "type": "string" + }, + "updated-by": "Samuli, Silvius ", + "sources": { + "input": { + "type": "source-input" + }, + "default": { + "type": "source-default", + "properties": {} + }, + "processor-db" : { + "type" : "source-db", + "properties" : { + "type" : "SQL", + "query" : "select sdnctl.VF_MODULE_MODEL.version as vf_module_model_version 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-model-version" : "vf-module-model-version" + }, + "key-dependencies" : [ "vf-module-model-customization-uuid" ], + "endpoint-selector" : "dynamic-db-source" + } + } + } + } + }, + { + "name": "int_private1_gw_ip", + "tags": "k8s, cnf, int_private1_gw_ip", + "data_type": "string", + "description": "Private unprotected network gateway ip address", + "entry_schema": "string", + "updatedBy": "Samuli, Silvius ", + "definition": { + "tags": "k8s, cnf, int_private1_gw_ip", + "name": "int_private1_gw_ip", + "property": { + "description": "Private unprotected network gateway ip address", + "type": "string" + }, + "updated-by": "Samuli, Silvius ", + "sources": { + "input": { + "type": "source-input" + }, + "default": { + "type": "source-default", + "properties": {} + }, + "sdnc" : { + "type" : "source-rest", + "properties" : { + "verb" : "GET", + "type" : "JSON", + "url-path" : "/restconf/config/GENERIC-RESOURCE-API:services/service/$service-instance-id/service-data/vnfs/vnf/$vnf-id/vnf-data/vnf-topology/vnf-parameters-data/param/int_private1_gw_ip", + "path" : "/param/0/value", + "input-key-mapping" : { + "service-instance-id" : "service-instance-id", + "vnf-id" : "vnf-id" + }, + "output-key-mapping" : { + "int_private1_gw_ip" : "value" + }, + "key-dependencies" : [ "service-instance-id", "vnf-id" ] + } + } + } + } + }, + { + "name": "int_private1_net_id", + "tags": "k8s, cnf, int_private1_net_id", + "data_type": "string", + "description": "Private unprotected network identification", + "entry_schema": "string", + "updatedBy": "Samuli, Silvius ", + "definition": { + "tags": "k8s, cnf, int_private1_net_id", + "name": "int_private1_net_id", + "property": { + "description": "Private network identification", + "type": "string" + }, + "updated-by": "Samuli, Silvius ", + "sources": { + "input": { + "type": "source-input" + }, + "default": { + "type": "source-default", + "properties": {} + }, + "sdnc" : { + "type" : "source-rest", + "properties" : { + "verb" : "GET", + "type" : "JSON", + "url-path" : "/restconf/config/GENERIC-RESOURCE-API:services/service/$service-instance-id/service-data/vnfs/vnf/$vnf-id/vnf-data/vnf-topology/vnf-parameters-data/param/int_private1_net_id", + "path" : "/param/0/value", + "input-key-mapping" : { + "service-instance-id" : "service-instance-id", + "vnf-id" : "vnf-id" + }, + "output-key-mapping" : { + "int_private1_net_id" : "value" + }, + "key-dependencies" : [ "service-instance-id", "vnf-id" ] + } + } + } + } + }, + { + "name": "int_private1_subnet_id", + "tags": "k8s, cnf, int_private1_subnet_id", + "data_type": "string", + "description": "Private unprotected subnetwork identification", + "entry_schema": "string", + "updatedBy": "Samuli, Silvius ", + "definition": { + "tags": "k8s, cnf, int_private1_subnet_id", + "name": "int_private1_subnet_id", + "property": { + "description": "Private unprotected subnetwork identification", + "type": "string" + }, + "updated-by": "Samuli, Silvius ", + "sources": { + "input": { + "type": "source-input" + }, + "default": { + "type": "source-default", + "properties": {} + }, + "sdnc" : { + "type" : "source-rest", + "properties" : { + "verb" : "GET", + "type" : "JSON", + "url-path" : "/restconf/config/GENERIC-RESOURCE-API:services/service/$service-instance-id/service-data/vnfs/vnf/$vnf-id/vnf-data/vnf-topology/vnf-parameters-data/param/int_private1_subnet_id", + "path" : "/param/0/value", + "input-key-mapping" : { + "service-instance-id" : "service-instance-id", + "vnf-id" : "vnf-id" + }, + "output-key-mapping" : { + "int_private1_subnet_id" : "value" + }, + "key-dependencies" : [ "service-instance-id", "vnf-id" ] + } + } + } + } + }, + { + "name": "int_private2_gw_ip", + "tags": "k8s, cnf, int_private2_gw_ip", + "data_type": "string", + "description": "Private protected network gateway ip address", + "entry_schema": "string", + "updatedBy": "Samuli, Silvius ", + "definition": { + "tags": "k8s, cnf, int_private2_gw_ip", + "name": "int_private2_gw_ip", + "property": { + "description": "Private protected network gateway ip address", + "type": "string" + }, + "updated-by": "Samuli, Silvius ", + "sources": { + "input": { + "type": "source-input" + }, + "default": { + "type": "source-default", + "properties": {} + }, + "sdnc" : { + "type" : "source-rest", + "properties" : { + "verb" : "GET", + "type" : "JSON", + "url-path" : "/restconf/config/GENERIC-RESOURCE-API:services/service/$service-instance-id/service-data/vnfs/vnf/$vnf-id/vnf-data/vnf-topology/vnf-parameters-data/param/int_private2_gw_ip", + "path" : "/param/0/value", + "input-key-mapping" : { + "service-instance-id" : "service-instance-id", + "vnf-id" : "vnf-id" + }, + "output-key-mapping" : { + "int_private2_gw_ip" : "value" + }, + "key-dependencies" : [ "service-instance-id", "vnf-id" ] + } + } + } + } + }, + { + "name": "int_private2_net_id", + "tags": "k8s, cnf, int_private2_net_id", + "data_type": "string", + "description": "Private protected network identification", + "entry_schema": "string", + "updatedBy": "Samuli, Silvius ", + "definition": { + "tags": "k8s, cnf, int_private2_net_id", + "name": "int_private2_net_id", + "property": { + "description": "Private protected network identification", + "type": "string" + }, + "updated-by": "Samuli, Silvius ", + "sources": { + "input": { + "type": "source-input" + }, + "default": { + "type": "source-default", + "properties": {} + }, + "sdnc" : { + "type" : "source-rest", + "properties" : { + "verb" : "GET", + "type" : "JSON", + "url-path" : "/restconf/config/GENERIC-RESOURCE-API:services/service/$service-instance-id/service-data/vnfs/vnf/$vnf-id/vnf-data/vnf-topology/vnf-parameters-data/param/int_private2_net_id", + "path" : "/param/0/value", + "input-key-mapping" : { + "service-instance-id" : "service-instance-id", + "vnf-id" : "vnf-id" + }, + "output-key-mapping" : { + "int_private2_net_id" : "value" + }, + "key-dependencies" : [ "service-instance-id", "vnf-id" ] + } + } + } + } + }, + { + "name": "int_private2_subnet_id", + "tags": "k8s, cnf, int_private2_subnet_id", + "data_type": "string", + "description": "Private protected subnetwork identification", + "entry_schema": "string", + "updatedBy": "Samuli, Silvius ", + "definition": { + "tags": "k8s, cnf, int_private2_subnet_id", + "name": "int_private2_subnet_id", + "property": { + "description": "Private protected subnetwork identification", + "type": "string" + }, + "updated-by": "Samuli, Silvius ", + "sources": { + "input": { + "type": "source-input" + }, + "default": { + "type": "source-default", + "properties": {} + }, + "sdnc" : { + "type" : "source-rest", + "properties" : { + "verb" : "GET", + "type" : "JSON", + "url-path" : "/restconf/config/GENERIC-RESOURCE-API:services/service/$service-instance-id/service-data/vnfs/vnf/$vnf-id/vnf-data/vnf-topology/vnf-parameters-data/param/int_private2_subnet_id", + "path" : "/param/0/value", + "input-key-mapping" : { + "service-instance-id" : "service-instance-id", + "vnf-id" : "vnf-id" + }, + "output-key-mapping" : { + "int_private2_subnet_id" : "value" + }, + "key-dependencies" : [ "service-instance-id", "vnf-id" ] + } + } + } + } + }, + { + "name": "onap_private_gw_ip", + "tags": "k8s, cnf, onap_private_gw_ip", + "data_type": "string", + "description": "Private onap management network gateway ip address", + "entry_schema": "string", + "updatedBy": "Samuli, Silvius ", + "definition": { + "tags": "k8s, cnf, onap_private_gw_ip", + "name": "onap_private_gw_ip", + "property": { + "description": "Private onap management network gateway ip address", + "type": "string" + }, + "updated-by": "Samuli, Silvius ", + "sources": { + "input": { + "type": "source-input" + }, + "default": { + "type": "source-default", + "properties": {} + }, + "sdnc" : { + "type" : "source-rest", + "properties" : { + "verb" : "GET", + "type" : "JSON", + "url-path" : "/restconf/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_gw_ip", + "path" : "/param/0/value", + "input-key-mapping" : { + "service-instance-id" : "service-instance-id", + "vnf-id" : "vnf-id" + }, + "output-key-mapping" : { + "onap_private_gw_ip" : "value" + }, + "key-dependencies" : [ "service-instance-id", "vnf-id" ] + } + } + } + } + } +] -- cgit 1.2.3-korg