X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=nfvo.py;h=3708edd049263a47225b9762ce828f4b3df2ddf7;hb=7e0e9c65bbe47c3c4dc784c7b33eac90bc2fde91;hp=0b7e6d0d70e538971d7f9a4dc3ed20795afc6800;hpb=c5651795c9b7fc6782fa666a27351c2aae52c08f;p=osm%2FRO.git diff --git a/nfvo.py b/nfvo.py index 0b7e6d0d..3708edd0 100644 --- a/nfvo.py +++ b/nfvo.py @@ -43,7 +43,7 @@ from db_base import db_base_Exception import nfvo_db from threading import Lock from time import time -#import openvim.ovim as Ovim +import openvim.ovim as Ovim global global_config global vimconn_imported @@ -133,8 +133,8 @@ def start_service(mydb): #TODO: log_level_of should not be needed. To be modified in ovim 'log_level_of': 'DEBUG' } - #ovim = Ovim.ovim(ovim_configuration) - #ovim.start_service() + ovim = Ovim.ovim(ovim_configuration) + ovim.start_service() from_= 'tenants_datacenters as td join datacenters as d on td.datacenter_id=d.uuid join datacenter_tenants as dt on td.datacenter_tenant_id=dt.uuid' select_ = ('type','d.config as config','d.uuid as datacenter_id', 'vim_url', 'vim_url_admin', 'd.name as datacenter_name', @@ -3129,25 +3129,22 @@ def vim_action_create(mydb, tenant_id, datacenter, item, descriptor): return vim_action_get(mydb, tenant_id, datacenter, item, content) def sdn_controller_create(mydb, tenant_id, sdn_controller): - #data = ovim.new_of_controller(sdn_controller) - data = [] + data = ovim.new_of_controller(sdn_controller) logger.debug('New SDN controller created with uuid {}'.format(data)) return data def sdn_controller_update(mydb, tenant_id, controller_id, sdn_controller): - #data = ovim.edit_of_controller(controller_id, sdn_controller) - data = [] + data = ovim.edit_of_controller(controller_id, sdn_controller) msg = 'SDN controller {} updated'.format(data) logger.debug(msg) return msg def sdn_controller_list(mydb, tenant_id, controller_id=None): if controller_id == None: - #data = ovim.get_of_controllers() - data = [] + data = ovim.get_of_controllers() else: - #data = ovim.show_of_controller(controller_id) - data = {'dpid': None} + data = ovim.show_of_controller(controller_id) + msg = 'SDN controller list:\n {}'.format(data) logger.debug(msg) return data @@ -3161,8 +3158,7 @@ def sdn_controller_delete(mydb, tenant_id, controller_id): if 'sdn-controller' in config and config['sdn-controller'] == controller_id: raise NfvoException("SDN controller {} is in use by datacenter {}".format(controller_id, datacenter['uuid']), HTTP_Conflict) - #data = ovim.delete_of_controller(controller_id) - data = 0 + data = ovim.delete_of_controller(controller_id) msg = 'SDN controller {} deleted'.format(data) logger.debug(msg) return msg @@ -3177,8 +3173,8 @@ def datacenter_sdn_port_mapping_set(mydb, tenant_id, datacenter_id, sdn_port_map except: raise NfvoException("The datacenter {} has not an SDN controller associated".format(datacenter_id), HTTP_Bad_Request) - #sdn_controller = ovim.show_of_controller(sdn_controller_id) - #switch_dpid = sdn_controller["dpid"] + sdn_controller = ovim.show_of_controller(sdn_controller_id) + switch_dpid = sdn_controller["dpid"] maps = list() for compute_node in sdn_port_mapping: @@ -3194,12 +3190,10 @@ def datacenter_sdn_port_mapping_set(mydb, tenant_id, datacenter_id, sdn_port_map " or 'switch_mac'", HTTP_Bad_Request) maps.append(dict(element)) - #return ovim.set_of_port_mapping(maps, ofc_id=sdn_controller_id, switch_dpid=switch_dpid, region=datacenter_id) - return [] + return ovim.set_of_port_mapping(maps, ofc_id=sdn_controller_id, switch_dpid=switch_dpid, region=datacenter_id) def datacenter_sdn_port_mapping_list(mydb, tenant_id, datacenter_id): - #maps = ovim.get_of_port_mappings(db_filter={"region": datacenter_id}) - maps = [] + maps = ovim.get_of_port_mappings(db_filter={"region": datacenter_id}) result = { "sdn-controller": None, @@ -3217,9 +3211,9 @@ def datacenter_sdn_port_mapping_list(mydb, tenant_id, datacenter_id): result["sdn-controller"] = controller_id result["dpid"] = sdn_controller["dpid"] - # if result["sdn-controller"] == None or result["dpid"] == None: - # raise NfvoException("Not all SDN controller information for datacenter {} could be found: {}".format(datacenter_id, result), - # HTTP_Internal_Server_Error) + if result["sdn-controller"] == None or result["dpid"] == None: + raise NfvoException("Not all SDN controller information for datacenter {} could be found: {}".format(datacenter_id, result), + HTTP_Internal_Server_Error) if len(maps) == 0: return result @@ -3251,5 +3245,4 @@ def datacenter_sdn_port_mapping_list(mydb, tenant_id, datacenter_id): return result def datacenter_sdn_port_mapping_delete(mydb, tenant_id, datacenter_id): - #return ovim.clear_of_port_mapping(db_filter={"region":datacenter_id}) - return 0 + return ovim.clear_of_port_mapping(db_filter={"region":datacenter_id}) \ No newline at end of file