X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=RO-VIM-openstack%2Fosm_rovim_openstack%2Fvimconn_openstack.py;h=61231411d713c55b878495dab78f1e40fa64fadc;hb=7277486065c905f91477bb064da86855a8fa269a;hp=e392ca7ad5948f99f7c1ec97af01dd4bf7a37c66;hpb=667d158c0d3ee7b4c176ad0b27ac428c81b0ddbc;p=osm%2FRO.git diff --git a/RO-VIM-openstack/osm_rovim_openstack/vimconn_openstack.py b/RO-VIM-openstack/osm_rovim_openstack/vimconn_openstack.py index e392ca7a..61231411 100644 --- a/RO-VIM-openstack/osm_rovim_openstack/vimconn_openstack.py +++ b/RO-VIM-openstack/osm_rovim_openstack/vimconn_openstack.py @@ -32,7 +32,7 @@ to the VIM connector's SFC resources as follows: __author__ = "Alfonso Tierno, Gerardo Garcia, Pablo Montes, xFlow Research, Igor D.C., Eduardo Sousa" __date__ = "$22-sep-2017 23:59:59$" -from osm_ro import vimconn +from osm_ro_plugin import vimconn # import json import logging import netaddr @@ -87,7 +87,7 @@ class SafeDumper(yaml.SafeDumper): return super(SafeDumper, self).represent_data(data) -class vimconnector(vimconn.vimconnector): +class vimconnector(vimconn.VimConnector): def __init__(self, uuid, name, tenant_id, tenant_name, url, url_admin=None, user=None, passwd=None, log_level=None, config={}, persistent_info={}): '''using common constructor parameters. In this case @@ -96,11 +96,11 @@ class vimconnector(vimconn.vimconnector): ''' api_version = config.get('APIversion') if api_version and api_version not in ('v3.3', 'v2.0', '2', '3'): - raise vimconn.vimconnException("Invalid value '{}' for config:APIversion. " + raise vimconn.VimConnException("Invalid value '{}' for config:APIversion. " "Allowed values are 'v3.3', 'v2.0', '2' or '3'".format(api_version)) vim_type = config.get('vim_type') if vim_type and vim_type not in ('vio', 'VIO'): - raise vimconn.vimconnException("Invalid value '{}' for config:vim_type." + raise vimconn.VimConnException("Invalid value '{}' for config:vim_type." "Allowed values are 'vio' or 'VIO'".format(vim_type)) if config.get('dataplane_net_vlan_range') is not None: @@ -111,11 +111,11 @@ class vimconnector(vimconn.vimconnector): #validate vlan ranges provided by user self._validate_vlan_ranges(config.get('multisegment_vlan_range'), 'multisegment_vlan_range') - vimconn.vimconnector.__init__(self, uuid, name, tenant_id, tenant_name, url, url_admin, user, passwd, log_level, + vimconn.VimConnector.__init__(self, uuid, name, tenant_id, tenant_name, url, url_admin, user, passwd, log_level, config) if self.config.get("insecure") and self.config.get("ca_cert"): - raise vimconn.vimconnException("options insecure and ca_cert are mutually exclusive") + raise vimconn.VimConnException("options insecure and ca_cert are mutually exclusive") self.verify = True if self.config.get("insecure"): self.verify = False @@ -168,7 +168,7 @@ class vimconnector(vimconn.vimconnector): elif index == 'user_domain_id': return self.config.get("user_domain_id") else: - return vimconn.vimconnector.__getitem__(self, index) + return vimconn.VimConnector.__getitem__(self, index) def __setitem__(self, index, value): """Set individuals parameters and it is marked as dirty so to force connection reload. @@ -178,7 +178,7 @@ class vimconnector(vimconn.vimconnector): elif index == 'user_domain_id': self.config["user_domain_id"] = value else: - vimconn.vimconnector.__setitem__(self, index, value) + vimconn.VimConnector.__setitem__(self, index, value) self.session['reload_client'] = True def serialize(self, value): @@ -401,22 +401,22 @@ class vimconnector(vimconn.vimconnector): if isinstance(exception, (neExceptions.NetworkNotFoundClient, nvExceptions.NotFound, ksExceptions.NotFound, gl1Exceptions.HTTPNotFound)): - raise vimconn.vimconnNotFoundException(type(exception).__name__ + ": " + message_error) + raise vimconn.VimConnNotFoundException(type(exception).__name__ + ": " + message_error) elif isinstance(exception, (HTTPException, gl1Exceptions.HTTPException, gl1Exceptions.CommunicationError, ConnectionError, ksExceptions.ConnectionError, neExceptions.ConnectionFailed)): - raise vimconn.vimconnConnectionException(type(exception).__name__ + ": " + message_error) + raise vimconn.VimConnConnectionException(type(exception).__name__ + ": " + message_error) elif isinstance(exception, (KeyError, nvExceptions.BadRequest, ksExceptions.BadRequest)): - raise vimconn.vimconnException(type(exception).__name__ + ": " + message_error) + raise vimconn.VimConnException(type(exception).__name__ + ": " + message_error) elif isinstance(exception, (nvExceptions.ClientException, ksExceptions.ClientException, neExceptions.NeutronException)): - raise vimconn.vimconnUnexpectedResponse(type(exception).__name__ + ": " + message_error) + raise vimconn.VimConnUnexpectedResponse(type(exception).__name__ + ": " + message_error) elif isinstance(exception, nvExceptions.Conflict): - raise vimconn.vimconnConflictException(type(exception).__name__ + ": " + message_error) - elif isinstance(exception, vimconn.vimconnException): + raise vimconn.VimConnConflictException(type(exception).__name__ + ": " + message_error) + elif isinstance(exception, vimconn.VimConnException): raise exception else: # () self.logger.error("General Exception " + message_error, exc_info=True) - raise vimconn.vimconnConnectionException(type(exception).__name__ + ": " + message_error) + raise vimconn.VimConnConnectionException(type(exception).__name__ + ": " + message_error) def _get_ids_from_name(self): """ @@ -426,7 +426,7 @@ class vimconnector(vimconn.vimconnector): # get tenant_id if only tenant_name is supplied self._reload_connection() if not self.my_tenant_id: - raise vimconn.vimconnConnectionException("Error getting tenant information from name={} id={}". + raise vimconn.VimConnConnectionException("Error getting tenant information from name={} id={}". format(self.tenant_name, self.tenant_id)) if self.config.get('security_groups') and not self.security_groups_id: # convert from name to id @@ -440,7 +440,7 @@ class vimconnector(vimconn.vimconnector): break else: self.security_groups_id = None - raise vimconn.vimconnConnectionException("Not found security group {} for this tenant".format(sg)) + raise vimconn.VimConnConnectionException("Not found security group {} for this tenant".format(sg)) def check_vim_connectivity(self): # just get network list to check connectivity and credentials @@ -541,7 +541,7 @@ class vimconnector(vimconn.vimconnector): # or not declared, just ignore the checking if isinstance(self.config.get('dataplane_physical_net'), (tuple, list)) and \ provider_physical_network not in self.config['dataplane_physical_net']: - raise vimconn.vimconnConflictException( + raise vimconn.VimConnConflictException( "Invalid parameter 'provider-network:physical-network' for network creation. '{}' is not " "one of the declared list at VIM_config:dataplane_physical_net".format( provider_physical_network)) @@ -552,7 +552,7 @@ class vimconnector(vimconn.vimconnector): provider_physical_network = provider_physical_network[0] if not provider_physical_network: - raise vimconn.vimconnConflictException("You must provide a 'dataplane_physical_net' at VIM_config " + raise vimconn.VimConnConflictException("You must provide a 'dataplane_physical_net' at VIM_config " "for creating underlay networks. or use the NS instantiation" " parameter provider-network:physical-network for the VLD") @@ -582,7 +582,7 @@ class vimconnector(vimconn.vimconnector): vlanID = self._generate_multisegment_vlanID() segment2_dict["provider:segmentation_id"] = vlanID # else - # raise vimconn.vimconnConflictException( + # raise vimconn.VimConnConflictException( # "You must provide 'multisegment_vlan_range' at config dict before creating a multisegment network") segment_list.append(segment2_dict) network_dict["segments"] = segment_list @@ -590,7 +590,7 @@ class vimconnector(vimconn.vimconnector): # VIO Specific Changes. It needs a concrete VLAN if self.vim_type == "VIO" and vlan is None: if self.config.get('dataplane_net_vlan_range') is None: - raise vimconn.vimconnConflictException( + raise vimconn.VimConnConflictException( "You must provide 'dataplane_net_vlan_range' in format [start_ID - end_ID] at VIM_config " "for creating underlay networks") network_dict["provider:segmentation_id"] = self._generate_vlanID() @@ -695,9 +695,9 @@ class vimconnector(vimconn.vimconnector): filter_dict={"id": net_id} net_list = self.get_network_list(filter_dict) if len(net_list)==0: - raise vimconn.vimconnNotFoundException("Network '{}' not found".format(net_id)) + raise vimconn.VimConnNotFoundException("Network '{}' not found".format(net_id)) elif len(net_list)>1: - raise vimconn.vimconnConflictException("Found more than one network with this criteria") + raise vimconn.VimConnConflictException("Found more than one network with this criteria") net = net_list[0] subnets=[] for subnet_id in net.get("subnets", () ): @@ -784,11 +784,11 @@ class vimconnector(vimconn.vimconnector): if net_vim.get('fault'): #TODO net['error_msg'] = str(net_vim['fault']) - except vimconn.vimconnNotFoundException as e: + except vimconn.VimConnNotFoundException as e: self.logger.error("Exception getting net status: %s", str(e)) net['status'] = "DELETED" net['error_msg'] = str(e) - except vimconn.vimconnException as e: + except vimconn.VimConnException as e: self.logger.error("Exception getting net status: %s", str(e)) net['status'] = "VIM_ERROR" net['error_msg'] = str(e) @@ -824,9 +824,9 @@ class vimconnector(vimconn.vimconnector): extended = flavor_dict.get("extended", {}) if extended: #TODO - raise vimconn.vimconnNotFoundException("Flavor with EPA still not implemented") + raise vimconn.VimConnNotFoundException("Flavor with EPA still not implemented") # if len(numas) > 1: - # raise vimconn.vimconnNotFoundException("Cannot find any flavor with more than one numa") + # raise vimconn.VimConnNotFoundException("Cannot find any flavor with more than one numa") # numa=numas[0] # numas = extended.get("numas") for flavor in self.nova.flavors.list(): @@ -842,7 +842,7 @@ class vimconnector(vimconn.vimconnector): flavor_candidate_data = flavor_data if not exact_match and flavor_candidate_id: return flavor_candidate_id - raise vimconn.vimconnNotFoundException("Cannot find any flavor matching '{}'".format(str(flavor_dict))) + raise vimconn.VimConnNotFoundException("Cannot find any flavor matching '{}'".format(str(flavor_dict))) except (nvExceptions.NotFound, nvExceptions.ClientException, ksExceptions.ClientException, ConnectionError) as e: self._format_exception(e) @@ -927,7 +927,7 @@ class vimconnector(vimconn.vimconnector): extra_specs["hw:cpu_policy"] = "dedicated" # for interface in numa.get("interfaces",() ): # if interface["dedicated"]=="yes": - # raise vimconn.vimconnException("Passthrough interfaces are not supported for the openstack connector", http_code=vimconn.HTTP_Service_Unavailable) + # raise vimconn.VimConnException("Passthrough interfaces are not supported for the openstack connector", http_code=vimconn.HTTP_Service_Unavailable) # #TODO, add the key 'pci_passthrough:alias"="