X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=nfvo.py;h=c27c51e1d3e086caf92faf74eb56edefeef6fb7c;hb=490afebb6521b1942d50113d8bd7fa43462a6f25;hp=4da9f554b9e3245e10c3addc56657a1b9f19269e;hpb=e6c58ce584d1c0e884d59d9aaf56137031ca7487;p=osm%2FRO.git diff --git a/nfvo.py b/nfvo.py index 4da9f554..c27c51e1 100644 --- a/nfvo.py +++ b/nfvo.py @@ -953,6 +953,7 @@ def new_scenario(mydb, tenant_id, topo): #1.4 get list of connections conections = topo['topology']['connections'] conections_list = [] + conections_list_name = [] for k in conections.keys(): if type(conections[k]['nodes'])==dict: #dict with node:iface pairs ifaces_list = conections[k]['nodes'].items() @@ -981,7 +982,7 @@ def new_scenario(mydb, tenant_id, topo): if con_type == "dataplane_net" or con_type == "bridge_net": other_nets[k]["model"] = con_type - + conections_list_name.append(k) conections_list.append(set(ifaces_list)) #from list to set to operate as a set (this conversion removes elements that are repeated in a list) #print set(ifaces_list) #check valid VNF and iface names @@ -1001,6 +1002,7 @@ def new_scenario(mydb, tenant_id, topo): if len(conections_list[index] & conections_list[index2])>0: #common interface, join nets conections_list[index] |= conections_list[index2] del conections_list[index2] + del conections_list_name[index2] else: index2 += 1 conections_list[index] = list(conections_list[index]) # from set to list again @@ -1107,7 +1109,8 @@ def new_scenario(mydb, tenant_id, topo): net_type_bridge=False net_type_data=False net_target = "__-__net"+str(net_nb) - net_list[net_target] = {'name': "net-"+str(net_nb), 'description':"net-%s in scenario %s" %(net_nb,topo['name']), + net_list[net_target] = {'name': conections_list_name[net_nb], #"net-"+str(net_nb), + 'description':"net-%s in scenario %s" %(net_nb,topo['name']), 'external':False} for iface in con: vnfs[ iface[0] ]['ifaces'][ iface[1] ]['net_key'] = net_target @@ -1183,7 +1186,7 @@ def new_scenario_v02(mydb, tenant_id, scenario_dict): where={} where_or={"tenant_id": tenant_id, 'public': "true"} error_text = "" - error_pos = "'topology':'nodes':'" + name + "'" + error_pos = "'scenario':'vnfs':'" + name + "'" if 'vnf_id' in vnf: error_text += " 'vnf_id' " + vnf['vnf_id'] where['uuid'] = vnf['vnf_id'] @@ -1191,7 +1194,7 @@ def new_scenario_v02(mydb, tenant_id, scenario_dict): error_text += " 'vnf_name' " + vnf['vnf_name'] where['name'] = vnf['vnf_name'] if len(where) == 0: - raise NfvoException("Needed a 'vnf_id' or 'VNF model' at " + error_pos, HTTP_Bad_Request) + raise NfvoException("Needed a 'vnf_id' or 'vnf_name' at " + error_pos, HTTP_Bad_Request) vnf_db = mydb.get_rows(SELECT=('uuid','name','description'), FROM='vnfs', WHERE=where, @@ -1522,7 +1525,7 @@ def new_scenario_v03(mydb, tenant_id, scenario_dict): where={} where_or={"tenant_id": tenant_id, 'public': "true"} error_text = "" - error_pos = "'topology':'nodes':'" + name + "'" + error_pos = "'scenario':'vnfs':'" + name + "'" if 'vnf_id' in vnf: error_text += " 'vnf_id' " + vnf['vnf_id'] where['uuid'] = vnf['vnf_id'] @@ -1530,7 +1533,7 @@ def new_scenario_v03(mydb, tenant_id, scenario_dict): error_text += " 'vnf_name' " + vnf['vnf_name'] where['name'] = vnf['vnf_name'] if len(where) == 0: - raise NfvoException("Needed a 'vnf_id' or 'VNF model' at " + error_pos, HTTP_Bad_Request) + raise NfvoException("Needed a 'vnf_id' or 'vnf_name' at " + error_pos, HTTP_Bad_Request) vnf_db = mydb.get_rows(SELECT=('uuid','name','description'), FROM='vnfs', WHERE=where,