Bug 1120332
Summary: | Neutron packaging breaks ML2 drivers that depend on another plugin | ||
---|---|---|---|
Product: | Red Hat OpenStack | Reporter: | Kevin Benton <blak111> |
Component: | openstack-neutron | Assignee: | Ihar Hrachyshka <ihrachys> |
Status: | CLOSED CURRENTRELEASE | QA Contact: | Nir Magnezi <nmagnezi> |
Severity: | unspecified | Docs Contact: | |
Priority: | high | ||
Version: | unspecified | CC: | breeler, chrisw, ihrachys, mlopes, nyechiel, sclewis, yeylon |
Target Milestone: | rc | ||
Target Release: | 5.0 (RHEL 7) | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | openstack-neutron-2014.1.1-4.el6ost openstack-neutron-2014.1.1-4.el7ost | Doc Type: | Bug Fix |
Doc Text: |
Previously, OpenStack Networking packaging split plugin specific Python files from common python-neutron packages into per-plugin packages. It turned out that some parts of the code that were split into separate packages are interdependent, and cannot work correctly without split counterparts.
As a result some ML2 drivers fail to work if openstack-neutron-ml2 is installed without a driver-specific plugin.
Now, all plugin specific Python code (except agent executables) were moved back into python-neutron. As a result, hidden interdependencies between miscellaneous plugins are no longer broken.
|
Story Points: | --- |
Clone Of: | Environment: | ||
Last Closed: | 2014-07-21 10:56:46 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Kevin Benton
2014-07-16 18:40:52 UTC
@Kevin, thanks for reporting the issue. We've already experienced several issues due to python code being split into multiple packages (f.e. see bug 1120146). The original idea to fix it was to merge all plugin packages back to python-neutron. But then we've realised that we don't want to see unrelated agents and their config files unless user explicitly requested them to be installed. Still, python code should not be split from python-neutron package, so plugin packages should not contain any site-packages/ contents. The good thing is that we've already merged all python files back to python-neutron as a fix for bug 1120146. The fix is already present in RHOSP 4 and RHOSP 5 builds (of course, general availability is subject to the next Z-stream release date). It was also fixed in RDO (Icehouse packages already passed CI level1, Havana is in progress; updates to public repos are, again, subject to the next repo update date). Okay, so if I understand correctly, the python-neutron package will contain the full code base and the individual plugin packages will just contain the plugin configuration files and init scripts for the agents. Is that correct? @Kevin, basically yes. Plus agent executables, if applicable. Is that solution ok for you? What do you mean by agent executables in this case? For example, the Big Switch agent resides in the Big Switch plugins directory so it would be included in the python-neutron package. @Kevin, some plugins have separate agent executables, f.e. for bigswitch it's neutron-restproxy-agent, for hyperv it's neutron-hyperv-agent. Those executables belong to corresponding plugin packages. As for the code in neutron/plugins, it all goes to python-neutron. @Ihar, the Big Switch agent is in the plugin directory. So the executable you are referring to in the Big Switch case would just be the init script referencing it, right? @Kevin, the agent code is left in python-neutron. The only thing that is moved to bigswitch plugin package is /usr/bin/neutron-restproxy-agent, which is just an executable to run agent's main(). That's great. Thanks QA doesn't verify third party plugins, so moving it to CLOSED. |