Bug 1271389 - neutron-server fails to start when using short name (ml2) for core_plugin
neutron-server fails to start when using short name (ml2) for core_plugin
Product: RDO
Classification: Community
Component: rdo-manager (Show other bugs)
Unspecified Unspecified
unspecified Severity urgent
: ---
: Liberty
Assigned To: chris alfonso
Depends On:
  Show dependency treegraph
Reported: 2015-10-13 16:08 EDT by John Trowbridge
Modified: 2016-04-26 12:57 EDT (History)
8 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2015-10-20 09:14:15 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description John Trowbridge 2015-10-13 16:08:34 EDT
Description of problem:
If the driver short name (ml2) is specified for core_plugin in neutron.conf rather than the full driver path (neutron.plugins.ml2.plugin.Ml2Plugin) neutron-server will no start with the following error in the neutron-server.log: 

ERROR neutron ValueError: Empty module name.

Version-Release number of selected component (if applicable):

How reproducible:
100% with RDO-Manager where the short name is used for configuring the core_plugin.

Steps to Reproduce:
1. Deploy RDO-Manager following [1] and use the delorean current repo instead of current-passed-ci. 

[1] https://repos.fedorapeople.org/repos/openstack-m/rdo-manager-docs/liberty/ 

Actual results:
Overcloud will fail because neutron-server is unable to start, and neutron-server logs on the overcloud will contain the error:
ERROR neutron ValueError: Empty module name.

Expected results:
Overcloud deploys successfully.

Additional info:
Comment 1 Alan Pevec 2015-10-13 16:23:24 EDT
> openstack-neutron-

that build looks ok, /usr/lib/python2.7/site-packages/neutron- has ml2 entry
Comment 2 John Trowbridge 2015-10-13 16:33:30 EDT
Some additional info:

This does not seem to reproduce on packstack, even with specifying the short name.

This does not happen on the undercloud, which has the exact same neutron version as the overcloud, and the same exact setting for core_plugin.

I checked `rpm -V python-neutron` on the overcloud to check if maybe the egginfo was messed up by overcloud install, but it returns nothing. Also, the entry_points.txt is there and has ml2 under the neutron.core_plugins.
Comment 3 John Trowbridge 2015-10-13 17:12:51 EDT
Further digging pointed to a kilo version for python-networking-cisco-2015.1.0-1.el7.noarch being installed in the overcloud image, and this package had redefined the ml2 plugin and stevedore choked on the dupe:

[root@overcloud-controller-0 heat-admin]# grep -R 'neutron.plugins.ml2.plugin:Ml2Plugin' /usr/lib/python2.7/site-packages/*
/usr/lib/python2.7/site-packages/networking_cisco-2015.1.0-py2.7.egg-info/entry_points.txt:ml2 = neutron.plugins.ml2.plugin:Ml2Plugin
/usr/lib/python2.7/site-packages/neutron- = neutron.plugins.ml2.plugin:Ml2Plugin

Moving the bug to rdo-manager as I am not sure the best place to fix this right now.
Comment 4 Ihar Hrachyshka 2015-10-15 06:12:21 EDT
There is no Liberty compatible python-networking-cisco release so far, please remove the rpm.
Comment 5 John Trowbridge 2015-10-16 16:47:12 EDT
The issue is resolved by using the instructions in this docs patch
https://github.com/redhat-openstack/tripleo-docs/commit/26d63c1abf991b3a7938ab93af73ccb9fd7e4b03 to build the images, or by using the hosted images here: https://repos.fedorapeople.org/repos/openstack-m/rdo-images-centos-liberty/
Comment 6 Alan Pevec 2015-10-21 15:59:42 EDT
This was fixed upstream in master and stable/kilo branches https://review.openstack.org/211795 but upstream has not tagged 2015.1.1 yet.

Note You need to log in before you can comment on or make changes to this bug.