diff --git a/neutron_plugin_contrail/plugins/opencontrail/contrail_plugin_base.py b/neutron_plugin_contrail/plugins/opencontrail/contrail_plugin_base.py index 63b689e..bbf190e 100644 --- a/neutron_plugin_contrail/plugins/opencontrail/contrail_plugin_base.py +++ b/neutron_plugin_contrail/plugins/opencontrail/contrail_plugin_base.py @@ -39,6 +39,10 @@ except ImportError: from oslo_log import log as logging +try: + from neutron_lib import exceptions as libexc +except ImportError: + libexc = None # Constant for max length of network interface names # eg 'bridge' in the Network class or 'devname' in @@ -92,6 +96,8 @@ def _raise_contrail_error(info, obj_name): raise getattr(securitygroup, exc_name)(**info) if hasattr(allowedaddresspairs, exc_name): raise getattr(allowedaddresspairs, exc_name)(**info) + if libexc and hasattr(libexc, exc_name): + raise getattr(libexc, exc_name)(**info) raise exc.NeutronException(**info)