← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1209042] Re: Neutron cannot load extension

 

If the plugin does not support the extension it will never be loaded.
The supported extensions are see decanted in the
supoorted_extendion_aliases.   Rather than develop your own OVS QoS
plugin I'd recommend you contact the assignee of the h3 blueprint who is
building an ext for he community.

** Changed in: neutron
       Status: New => Invalid

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1209042

Title:
  Neutron cannot load extension

Status in OpenStack Neutron (virtual network service):
  Invalid

Bug description:
  I have a demand to develop QoS for OVS Plugin. So, I put the ‘Qos.py’ in the '/neutron/plugins/openvswitch/extensions' and set  'api_extensions_path = /neutron/plugins/openvswitch/extensions' in 'api-paste.ini'.
  But it can not be loaded. I traced the loading process, I found the path could not be recognized by 'os.path.exists()'.

  In file 'neutron/api/extensions.py', I find the code:
  def get_extensions_path():
      paths = ':'.join(neutron.extensions.__path__)
      if cfg.CONF.api_extensions_path:
          paths = ':'.join([cfg.CONF.api_extensions_path, paths])

      return paths

  According to the codes, i must configure absolute path, such as
  "api_extensions_path = /usr/lib/python2.7/dist-
  packages/neutron/plugins/openvswitch/extensions". However, it think
  it's complicated.

  I have changed the codes to add the prefix path to 'api_extensions_path':
  def get_extensions_path():
      #spch
      paths = ':'.join(quantum.extensions.__path__)

      #get the prefix path
      prefix = "/".join(quantum.__path__[0].split("/")[:-1])

      if cfg.CONF.api_extensions_path:
          #split the api_extensions_path by ":"
          ext_paths = cfg.CONF.api_extensions_path.split(":")
          #add prefix for each path
          for i in range(len(ext_paths)):
              ext_paths[i] = prefix + ext_paths[i]

          ext_paths.append(paths)
          paths = ":".join(ext_paths)

      return paths

  I do not know whether it's a bug or i do not  understand the question.
  So, please help me.

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1209042/+subscriptions