X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=lcm%2Flcm%2Fnf%2Fvnfs%2Fconst.py;h=02edce7e3ba6669e42056acc93e10627af8b385c;hb=f18464b1f38ff751a7c12447fb8cf8d8c7b0c473;hp=b9c0733b4df5ec3905a29c65e308426d51e42975;hpb=c7eb0cdd0191a46acf80c616b37e48555ad8e606;p=vfc%2Fgvnfm%2Fvnflcm.git diff --git a/lcm/lcm/nf/vnfs/const.py b/lcm/lcm/nf/vnfs/const.py index b9c0733b..02edce7e 100644 --- a/lcm/lcm/nf/vnfs/const.py +++ b/lcm/lcm/nf/vnfs/const.py @@ -18,274 +18,78 @@ VNF_STATUS = enum(NULL='null', INSTANTIATING="instantiating", INACTIVE='inactive FAILED="failed", TERMINATING="terminating", SCALING="scaling", OPERATING="operating", UPDATING="updating", HEALING="healing") -vnfd_rawdata = { - "rawData": { - "instance": { - "metadata": { - "designer": "sdno", - "name": "underlayervpn", - "csarVersion": "1.0", - "csarType": "SSAR", - "csarProvider": "huawei", - "version": "1.0", - "type": "SSAR", - "id": "ns_underlayervpn_1_0" - }, - "nodes": [ - { - "id": "ac2_fdhrbk3dvan8hl5wifm9lp1e9", - "type_name": "tosca.nodes.sdn.l3ac", - "template_name": "ac2", - "properties": { - "ip": { - "type_name": "string" - }, - "route": { - "type_name": "string" - }, - "port": { - "type_name": "string" - }, - "svlan": { - "type_name": "string" - } - }, - "interfaces": [ - { - "name": "Standard", - "type_name": "tosca.interfaces.node.lifecycle.Standard" - } - ], - "capabilities": [ - { - "name": "feature", - "type_name": "tosca.capabilities.Node" - }, - { - "name": "ac", - "type_name": "tosca.capabilities.sdn.ac" - } - ], - "relationships": [ - { - "target_node_id": "pe2_go3vo1ctxr1vlbl0ij8stbtj6", - "target_capability_name": "feature" - }, - { - "target_node_id": "ac2_fdhrbk3dvan8hl5wifm9lp1e9", - "target_capability_name": "feature" - } - ] - }, - { - "id": "ac1_jqows1ai0j0cmwk9jdvuknt97", - "type_name": "tosca.nodes.sdn.l3ac", - "template_name": "ac1", - "properties": { - "ip": { - "type_name": "string" - }, - "route": { - "type_name": "string" - }, - "port": { - "type_name": "string" - }, - "svlan": { - "type_name": "string" - } - }, - "interfaces": [ - { - "name": "Standard", - "type_name": "tosca.interfaces.node.lifecycle.Standard" - } - ], - "capabilities": [ - { - "name": "feature", - "type_name": "tosca.capabilities.Node" - }, - { - "name": "ac", - "type_name": "tosca.capabilities.sdn.ac" - } - ], - "relationships": [ - { - "target_node_id": "pe1_e58ekps6m45g6w9egs9lue2j7", - "target_capability_name": "feature" - }, - { - "target_node_id": "ac2_fdhrbk3dvan8hl5wifm9lp1e9", - "target_capability_name": "feature" - } - ] +inst_req_data = { + "flavourId": "flavour_1", + "instantiationLevelId": "instantiationLevel_1", + "extVirtualLinks": [ + { + "vlInstanceId": "1", + "vim": { + "vimInfoId": "1", + "vimId": "1", + "interfaceInfo": { + "vimType": "vim", + "apiVersion": "v2", + "protocolType": "http" }, - { - "id": "vpn_ie0xim076f7cje67fvrrq9tg1", - "type_name": "tosca.nodes.sdn.underlayVPN", - "template_name": "vpn", - "properties": { - "serviceType": { - "type_name": "string" - }, - "description": { - "type_name": "string" - }, - "name": { - "type_name": "string" - }, - "topology": { - "type_name": "string" - } - }, - "interfaces": [ - { - "name": "Standard", - "type_name": "tosca.interfaces.node.lifecycle.Standard" - } - ], - "capabilities": [ - { - "name": "feature", - "type_name": "tosca.capabilities.Node" - } - ], - "relationships": [ - { - "target_node_id": "ac1_jqows1ai0j0cmwk9jdvuknt97", - "target_capability_name": "feature" - }, - { - "target_node_id": "ac2_fdhrbk3dvan8hl5wifm9lp1e9", - "target_capability_name": "feature" - } - ] + "accessInfo": { + "tenant": "tenant_vCPE", + "username": "vCPE", + "password": "vCPE_321" }, + "interfaceEndpoint": "http://10.43.21.105:80/" + }, + "resourceId": "1246", + "extCps": [ { - "id": "pe1_e58ekps6m45g6w9egs9lue2j7", - "type_name": "tosca.nodes.sdn.l3pe", - "template_name": "pe1", - "properties": { - "id": { - "type_name": "string" - } - }, - "interfaces": [ - { - "name": "Standard", - "type_name": "tosca.interfaces.node.lifecycle.Standard" - } - ], - "capabilities": [ + "cpdId": "11", + "addresses": [ { - "name": "feature", - "type_name": "tosca.capabilities.Node" + "addressType": "MAC", + "l2AddressData": "00:f3:43:20:a2:a3" }, { - "name": "pe", - "type_name": "tosca.capabilities.sdn.pe" - } - ] - }, - { - "id": "pe2_go3vo1ctxr1vlbl0ij8stbtj6", - "type_name": "tosca.nodes.sdn.l3pe", - "template_name": "pe2", - "properties": { - "id": { - "type_name": "string" - } - }, - "interfaces": [ - { - "name": "Standard", - "type_name": "tosca.interfaces.node.lifecycle.Standard" + "addressType": "IP", + "l3AddressData": { + "iPAddressType": "IPv4", + "iPAddress": "192.168.104.2" + } } ], - "capabilities": [ - { - "name": "feature", - "type_name": "tosca.capabilities.Node" - }, - { - "name": "pe", - "type_name": "tosca.capabilities.sdn.pe" - } - ] - } - ], - "substitution": { - "node_type_name": "tosca.nodes.sdn.ext.NS.ns_underlayervpn" - }, - "inputs": { - "ac2_ip": { - "type_name": "string", - "description": "ac2_ipofunderlayvpn" - }, - "ac2_route": { - "type_name": "string", - "description": "ac2_routeofunderlayvpn" - }, - "serviceType": { - "type_name": "string", - "description": "serviceTypeofunderlayvpn" - }, - "description": { - "type_name": "string", - "description": "descriptionofunderlayvpn" - }, - "pe2_id": { - "type_name": "string", - "description": "pe2_idofunderlayvpn" - }, - "ac1_route": { - "type_name": "string", - "description": "ac1_routeofunderlayvpn" - }, - "ac1_svlan": { - "type_name": "integer", - "description": "ac1_svlanofunderlayvpn" - }, - "name": { - "type_name": "string", - "description": "Nameofunderlayervpn" - }, - "ac1_ip": { - "type_name": "string", - "description": "ac1_ipofunderlayvpn" - }, - "ac2_port": { - "type_name": "string", - "description": "ac2_portofunderlayvpn" - }, - "pe1_id": { - "type_name": "string", - "description": "pe1_idofunderlayvpn" - }, - "technology": { - "type_name": "string", - "description": "technologyofunderlayvpn" - }, - "ac1_port": { - "type_name": "string", - "description": "ac1_portofunderlayvpn" - }, - "ac2_svlan": { - "type_name": "integer", - "description": "ac2_svlanofunderlayvpn" - }, - "topology": { - "type_name": "string", - "description": "topologyofunderlayvpn" + "numDynamicAddresses": 0 } + ] + }, + { + "vlInstanceId": '55', + "resourceId": '55_network', + "resourceSubnetId": '55_subnet', + "cpdId": 'cpId1', + "vim": { + "vimid": '55_vimid' } } + ], + "localizationLanguage": "en_US", + "additionalParams": { + "inputs": { + "key1": "test1", + "key2": "test2" + }, + "extVirtualLinks": [ + { + "vlInstanceId": '55', + "resourceId": '55_network', + "resourceSubnetId": '55_subnet', + "cpdId": 'cpId1', + "vim": { + "vimid": '55_vimid' + } + } + ] } } - vnfd_model_dict = { 'metadata': { 'vendor': u'zte', @@ -302,106 +106,147 @@ vnfd_model_dict = { }, 'vdus': [ { - 'volumn_storages': [ - - ], - 'nfv_compute': { - 'mem_size': '', - 'num_cpus': u'2' - }, - 'local_storages': [ - - ], - 'vdu_id': u'vdu_omm.001', - 'image_file': u'opencos_sss_omm_img_release_20150723-1-disk1', - 'dependencies': [ - - ], - 'vls': [ - - ], - 'cps': [ - - ], - 'properties': { - 'key_vdu': '', - 'support_scaling': False, - 'vdu_type': '', - 'name': '', - 'storage_policy': '', - 'location_info': { - 'vimId': '', - 'availability_zone': '', - 'region': '', - 'dc': '', - 'host': '', - 'tenant': '' + "vdu_id": "vdu1Id", + "description": "vdu description", + "properties": { + "name": "vduinstname", + "vdu_type": "OMP", + "key_vdu": True, + "support_scaling": True, + "location_info": { + "vimid": "vimid", + "tenant": "tenantname", + "availability_zone": "zone1", + "host": "host1" }, - 'inject_data_list': [ - + "local_affinity_antiaffinity_rule": [ + { + "affinity_antiaffinity": "anti-affinity", + "scope": "node" + }, + { + "affinity_antiaffinity": "affinity", + "scope": "zone" + } ], - 'watchdog': { - 'action': '', - 'enabledelay': '' - }, - 'local_affinity_antiaffinity_rule': { - + "inject_data_list": [ + { + "file_name": "abc.xml", + "file_data": "xxxssss" + } + ], + "storage_policy": "HIGH", + "template_id": "26", + "manual_scale_select_vim": False, + "watchdog": { + "enabledelay": 600000, + "action": "reset" }, - 'template_id': u'omm.001', - 'manual_scale_select_vim': False + "is_predefined": False, + "allow_scale_updown": False, + "inject_network_address": True, + "inner_hugepage_num": 100, + "inner_hugepage_size": "2048", + "action": "add" }, - 'description': u'singleommvm' - }, - { - 'volumn_storages': [ - + "image_file": u'sss', + "local_storages": [ + "local_storage_id1", + "local_storage_id2" ], - 'nfv_compute': { - 'mem_size': '', - 'num_cpus': u'14' - }, - 'local_storages': [ - + "volume_storages": [ + { + "volume_storage_id": "volume_storage1", + "location": "/usr/data", + "device": "/dev/hda1" + } ], - 'vdu_id': u'vdu_12', - 'image_file': u'sss', - 'dependencies': [ - + "dependencies": [ + "vdu1Id", + "vduNId" ], - 'vls': [ - + "nfv_compute": { + "num_cpus": 4, + "mem_size": "1 GB", + "cpu_frequency": "1GHz", + "flavor_extra_specs": { + "hw: cpu_policy": "shared", + "hw: cpu_max_threads": 50, + "hw: cpu_sockets": 10, + "hw: cpu_max_sockets": 20, + "hw: cpu_max_cores": 8, + "hw: cpu_threads": 30, + "hw: numa_mem.0": 12288, + "hw: hugepage_num": 100, + "hw: high_performance": "dvs_high", + "hw: numa_nodes": 1, + "hw: numa_cpus.0": "2,4,8", + "hw: numa_pci": True, + "hw: cpu_cores": 4, + "pci_passthrough: alias": "ColetoCreek: 1", + "hw: mem_page_size": "large", + "hw: mem_paging_mechanism": "EPT" + } + }, + "vls": [ + "vlId1", ], - 'cps': [ - + "cps": [ + "cpId1", ], - 'properties': { - 'key_vdu': '', - 'support_scaling': False, - 'vdu_type': '', - 'name': '', - 'storage_policy': '', - 'location_info': { - 'vimId': '', - 'availability_zone': '', - 'region': '', - 'dc': '', - 'host': '', - 'tenant': '' - }, - 'inject_data_list': [ - - ], - 'watchdog': { - 'action': '', - 'enabledelay': '' - }, - 'local_affinity_antiaffinity_rule': { - - }, - 'template_id': u'12', - 'manual_scale_select_vim': False + "scalable": { + "min_instances": 1, + "max_instances": 2, + "default_instances": 1 + }, + "interfaces": { + "Standard": { + "create": { + "implementation": "", + "inputs": { + "param1Name": "value1", + "paramNName": "valueN" + } + }, + "configure": { + "implementation": "", + "inputs": { + "param1Name": "value1", + "paramNName": "valueN" + } + }, + "start": { + "implementation": "", + "inputs": { + "param1Name": "value1", + "paramNName": "valueN" + } + }, + "stop": { + "implementation": "", + "inputs": { + "param1Name": "value1", + "paramNName": "valueN" + } + }, + "delete": { + "implementation": "", + "inputs": { + "param1Name": "value1", + "paramNName": "valueN" + } + } + } }, - 'description': u'ppvm' + "artifacts": [ + { + "artifact_name": "software_version_file", + "type": "tosca.artifacts.Deployment", + "file": "AppSoftwares/zte-cn-xgw-V5.16.11_NFV-version.zip", + "repository": "", + "deploy_path": "" + } + ] } ], 'volume_storages': [ @@ -501,8 +346,8 @@ vnfd_model_dict = { } ], "location_info": { - "vimid": "vimid", - "tenant": "tenantname" + "vimid": "vimid_1", + "tenant": "tenantname_1" }, "cloud_type": "IaaS" }, @@ -512,7 +357,7 @@ vnfd_model_dict = { ], 'cps': [ { - "cp_id": "cpId", + "cp_id": "cpId1", "description": "", "properties": { "name": "", @@ -545,11 +390,533 @@ vnfd_model_dict = { "is_virtual": False, "function": "control" }, - "vl_id": "vlid1", - "vdu_id": "vdu_id1" + "vl_id": "vldId1", + "vdu_id": "vdu1Id" } ], 'local_storages': [ ], -} \ No newline at end of file +} + +# get_tenant_id +c1_data_get_tenant_id = { + "tenants": [ + { + "id": "1", + "name": "tenantname_1" + } + ] +} + +# create_volume +c2_data_create_volume = { + "id": "4bd3e9eb-cd8b-456a-8589-910836a0ab31", + "name": "volume1", + "returnCode": 1, + "vimId": "vim_volume_1", + "vimName": "vim_volume_1", + "tenantId": "vim_volume_1", + "volumeType": "123", + "availabilityZone": "availabilityZone", + "status": "availuable", + "createTime": "2015-12-02T06:39:40.000000", + "type": None, + "size": 40 +} + +# get_volume +c3_data_get_volume = { + "status": "available", + "name": "wangsong", + "attachments": [ + { + "device": "/dev/vdc", + "serverId": "3030e666-528e-4954-88f5-cc21dab1262b", + "volumeId": "4bd3e9eb-cd8b-456a-8589-910836a0ab31", + "hostName": None, + "id": "4bd3e9eb-cd8b-456a-8589-910836a0ab31" + } + ], + "createTime": "2015-12-02T06:39:40.000000", + "type": None, + "id": "4bd3e9eb-cd8b-456a-8589-910836a0ab31", + "size": 40 +} + +# create_network +c4_data_create_network = { + "returnCode": 0, + "vimId": "11111", + "vimName": "11111", + "status": "ACTIVE", + "id": "3c9eebdbbfd345658269340b9ea6fb73", + "name": "net1", + "tenantId": "tenant1", + "networkName": "ommnet", + "shared": True, + "vlanTransparent": True, + "networkType": "vlan", + "segmentationId": 202, + "physicalNetwork": "ctrl", + "routerExternal": False +} + +# create_subnet +c5_data_create_subnet = { + "returnCode": 0, + "vimId": "11111", + "vimName": "11111", + "status": " ACTIVE", + "id": "d62019d3-bc6e-4319-9c1d-6722fc136a23", + "tenantId": "tenant1", + "networkId": "d32019d3-bc6e-4319-9c1d-6722fc136a22", + "networkName": "networkName", + "name": "subnet1", + "cidr": "10.43.35.0/24", + "ipVersion": 4, + "enableDhcp": 1, + "gatewayIp": "10.43.35.1", + "dnsNameservers": [], + "allocationPools": [ + { + "start": "192.168.199.2", + "end": "192.168.199.254" + } + ], + "hostRoutes": [] +} + +# create_ports +c6_data_create_port = { + "returnCode": 0, + "vimId": "11111", + "vimName": "11111", + "status": " ACTIVE", + "id": " 872019d3-bc6e-4319-9c1d-6722fc136afg", + "tenantId": "tenant1", + "name": "subnet1", + "networkId": "d32019d3-bc6e-4319-9c1d-6722fc136a22", + "networkName": "networkName", + "subnetId": "d62019d3-bc6e-4319-9c1d-6722fc136a23", + "subnetName": "subnet1", + "macAddress": "212.12.61.23", + "ip": "10.43.38.11", + "vnicType": "normal", + "securityGroups": "" +} + +# create_flavor +c7_data_create_flavor = { + "returnCode": 0, + "vimId": "11111", + "vimName": "11111", + "id": "142019d3-bc6e-4319-9c1d-6722fc136afg", + "tenantId": "tenant1", + "name": "subnet1", + "vcpu": 5, + "memory": 2, + "disk": 40, + "ephemeral": 40, + "swap": 20, + "isPublic": True, + "extraSpecs": "testtt" +} + +# list_image +c8_data_list_image = { + "vimid": "", + "vimname": "", + "images": [ + { + "status": "active", + "id": "5e2757c1-f846-4727-915c-9a872553ed75", + "size": 862016, + "name": u'sss.vmdk' + } + ] +} + +# create_vm +c9_data_create_vm = { + "returnCode": 1, + "id": "3c9eebdbbfd345658269340b9ea6fb73", + "name": "vm1", + "vimId": "11111", + "vimName": "11111", + "tenantId": "tenant1", + "boot": "boot_1", + "nicArray": "dfdf", + "volumeArray": "dfdf", + "availabilityZone": "fdvfdv", + "flavorId": "fdvfdv", + "metadata": "fdvfdv", + "securityGroups": "fdvfdv", + "serverGroup": "fdvfdv", + "status": "ACTIVE" +} + +# get_vm +c10_data_get_vm = { + "returnCode": 1, + "id": "3c9eebdbbfd345658269340b9ea6fb73", + "name": "vm1", + "vimId": "11111", + "vimName": "11111", + "tenantId": "tenant1", + "status": "ACTIVE" +} + +vnfpackage_info = { + "volume_storages": [], + "inputs": { + "pe1_id": { + "type": "string", + "description": "pe1_idofunderlayvpn" + }, + "pe2_id": { + "type": "string", + "description": "pe2_idofunderlayvpn" + }, + "serviceType": { + "type": "string", + "description": "serviceTypeofunderlayvpn" + }, + "description": { + "type": "string", + "description": "descriptionofunderlayvpn" + }, + "ac2_route": { + "type": "string", + "description": "ac2_routeofunderlayvpn" + }, + "ac1_route": { + "type": "string", + "description": "ac1_routeofunderlayvpn" + }, + "ac1_svlan": { + "type": "integer", + "description": "ac1_svlanofunderlayvpn" + }, + "ac2_ip": { + "type": "string", + "description": "ac2_ipofunderlayvpn" + }, + "ac1_ip": { + "type": "string", + "description": "ac1_ipofunderlayvpn" + }, + "ac2_port": { + "type": "string", + "description": "ac2_portofunderlayvpn" + }, + "topology": { + "type": "string", + "description": "topologyofunderlayvpn" + }, + "technology": { + "type": "string", + "description": "technologyofunderlayvpn" + }, + "ac1_port": { + "type": "string", + "description": "ac1_portofunderlayvpn" + }, + "ac2_svlan": { + "type": "integer", + "description": "ac2_svlanofunderlayvpn" + }, + "name": { + "type": "string", + "description": "Nameofunderlayervpn" + } + }, + "vdus": [], + "image_files": [], + "routers": [], + "local_storages": [], + "vnf_exposed": { + "external_cps": [], + "forward_cps": [] + }, + "vls": [], + "cps": [], + "metadata": { + "designer": "sdno", + "name": "underlayervpn", + "csarVersion": "1.0", + "csarType": "SSAR", + "csarProvider": "huawei", + "version": "1.0", + "type": "SSAR", + "id": "ns_underlayervpn_1_0" + } +} + +# # vnfd_rawdata +# vnfd_rawdata = { +# "rawData": { +# "instance": { +# "metadata": { +# "designer": "sdno", +# "name": "underlayervpn", +# "csarVersion": "1.0", +# "csarType": "SSAR", +# "csarProvider": "huawei", +# "version": "1.0", +# "type": "SSAR", +# "id": "ns_underlayervpn_1_0" +# }, +# "nodes": [ +# { +# "id": "ac2_fdhrbk3dvan8hl5wifm9lp1e9", +# "type_name": "tosca.nodes.sdn.l3ac", +# "template_name": "ac2", +# "properties": { +# "ip": { +# "type_name": "string" +# }, +# "route": { +# "type_name": "string" +# }, +# "port": { +# "type_name": "string" +# }, +# "svlan": { +# "type_name": "string" +# } +# }, +# "interfaces": [ +# { +# "name": "Standard", +# "type_name": "tosca.interfaces.node.lifecycle.Standard" +# } +# ], +# "capabilities": [ +# { +# "name": "feature", +# "type_name": "tosca.capabilities.Node" +# }, +# { +# "name": "ac", +# "type_name": "tosca.capabilities.sdn.ac" +# } +# ], +# "relationships": [ +# { +# "target_node_id": "pe2_go3vo1ctxr1vlbl0ij8stbtj6", +# "target_capability_name": "feature" +# }, +# { +# "target_node_id": "ac2_fdhrbk3dvan8hl5wifm9lp1e9", +# "target_capability_name": "feature" +# } +# ] +# }, +# { +# "id": "ac1_jqows1ai0j0cmwk9jdvuknt97", +# "type_name": "tosca.nodes.sdn.l3ac", +# "template_name": "ac1", +# "properties": { +# "ip": { +# "type_name": "string" +# }, +# "route": { +# "type_name": "string" +# }, +# "port": { +# "type_name": "string" +# }, +# "svlan": { +# "type_name": "string" +# } +# }, +# "interfaces": [ +# { +# "name": "Standard", +# "type_name": "tosca.interfaces.node.lifecycle.Standard" +# } +# ], +# "capabilities": [ +# { +# "name": "feature", +# "type_name": "tosca.capabilities.Node" +# }, +# { +# "name": "ac", +# "type_name": "tosca.capabilities.sdn.ac" +# } +# ], +# "relationships": [ +# { +# "target_node_id": "pe1_e58ekps6m45g6w9egs9lue2j7", +# "target_capability_name": "feature" +# }, +# { +# "target_node_id": "ac2_fdhrbk3dvan8hl5wifm9lp1e9", +# "target_capability_name": "feature" +# } +# ] +# }, +# { +# "id": "vpn_ie0xim076f7cje67fvrrq9tg1", +# "type_name": "tosca.nodes.sdn.underlayVPN", +# "template_name": "vpn", +# "properties": { +# "serviceType": { +# "type_name": "string" +# }, +# "description": { +# "type_name": "string" +# }, +# "name": { +# "type_name": "string" +# }, +# "topology": { +# "type_name": "string" +# } +# }, +# "interfaces": [ +# { +# "name": "Standard", +# "type_name": "tosca.interfaces.node.lifecycle.Standard" +# } +# ], +# "capabilities": [ +# { +# "name": "feature", +# "type_name": "tosca.capabilities.Node" +# } +# ], +# "relationships": [ +# { +# "target_node_id": "ac1_jqows1ai0j0cmwk9jdvuknt97", +# "target_capability_name": "feature" +# }, +# { +# "target_node_id": "ac2_fdhrbk3dvan8hl5wifm9lp1e9", +# "target_capability_name": "feature" +# } +# ] +# }, +# { +# "id": "pe1_e58ekps6m45g6w9egs9lue2j7", +# "type_name": "tosca.nodes.sdn.l3pe", +# "template_name": "pe1", +# "properties": { +# "id": { +# "type_name": "string" +# } +# }, +# "interfaces": [ +# { +# "name": "Standard", +# "type_name": "tosca.interfaces.node.lifecycle.Standard" +# } +# ], +# "capabilities": [ +# { +# "name": "feature", +# "type_name": "tosca.capabilities.Node" +# }, +# { +# "name": "pe", +# "type_name": "tosca.capabilities.sdn.pe" +# } +# ] +# }, +# { +# "id": "pe2_go3vo1ctxr1vlbl0ij8stbtj6", +# "type_name": "tosca.nodes.sdn.l3pe", +# "template_name": "pe2", +# "properties": { +# "id": { +# "type_name": "string" +# } +# }, +# "interfaces": [ +# { +# "name": "Standard", +# "type_name": "tosca.interfaces.node.lifecycle.Standard" +# } +# ], +# "capabilities": [ +# { +# "name": "feature", +# "type_name": "tosca.capabilities.Node" +# }, +# { +# "name": "pe", +# "type_name": "tosca.capabilities.sdn.pe" +# } +# ] +# } +# ], +# "substitution": { +# "node_type_name": "tosca.nodes.sdn.ext.NS.ns_underlayervpn" +# }, +# "inputs": { +# "ac2_ip": { +# "type_name": "string", +# "description": "ac2_ipofunderlayvpn" +# }, +# "ac2_route": { +# "type_name": "string", +# "description": "ac2_routeofunderlayvpn" +# }, +# "serviceType": { +# "type_name": "string", +# "description": "serviceTypeofunderlayvpn" +# }, +# "description": { +# "type_name": "string", +# "description": "descriptionofunderlayvpn" +# }, +# "pe2_id": { +# "type_name": "string", +# "description": "pe2_idofunderlayvpn" +# }, +# "ac1_route": { +# "type_name": "string", +# "description": "ac1_routeofunderlayvpn" +# }, +# "ac1_svlan": { +# "type_name": "integer", +# "description": "ac1_svlanofunderlayvpn" +# }, +# "name": { +# "type_name": "string", +# "description": "Nameofunderlayervpn" +# }, +# "ac1_ip": { +# "type_name": "string", +# "description": "ac1_ipofunderlayvpn" +# }, +# "ac2_port": { +# "type_name": "string", +# "description": "ac2_portofunderlayvpn" +# }, +# "pe1_id": { +# "type_name": "string", +# "description": "pe1_idofunderlayvpn" +# }, +# "technology": { +# "type_name": "string", +# "description": "technologyofunderlayvpn" +# }, +# "ac1_port": { +# "type_name": "string", +# "description": "ac1_portofunderlayvpn" +# }, +# "ac2_svlan": { +# "type_name": "integer", +# "description": "ac2_svlanofunderlayvpn" +# }, +# "topology": { +# "type_name": "string", +# "description": "topologyofunderlayvpn" +# } +# } +# } +# } +# }