quantum.plugins.cisco.nova.vifagent.py is broken due to Nova libvirt driver refactoring

Bug #1046758 reported by Daniel Berrange
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
neutron
Invalid
Medium
Kyle Mestery

Bug Description

At the start of Folsom development, the libvirt driver was re-written to stop using Cheetah templating for XML generation. In the course of this the vif.py classes were changed such that they return LibvirtConfigGuestInterface object instances, instead of a dictionary of template parameters:

  commit 77b7d39cf9a177a5947d3a59461661cde5d3af32
  Author: Daniel P. Berrange <email address hidden>
  Date: Wed Mar 7 06:57:36 2012 -0500

    Convert libvirt vif classes over to use config API

    The classes in the libvirt/vif.py file build up dictionaries
    and partial XML snippets, which are then passed onto Cheetah
    templating for XML generation. Instead of building up
    dictionaries of parameters, return LibvirtConfigGuestInterface
    object instances instead

    blueprint libvirt-xml-config-apis
    Change-Id: I4e977225e21219f408dd729ac280dcbfc6b8ba8f
    Signed-off-by: Daniel P. Berrange <email address hidden>

The Quantum Cisco Nova vifagent.py plugin still uses the old approach of returning a dictionary of template parameters, and is thus broken wrt current Nova libvirt driver requirements.

Since this breakage has gone unnoticed for so long, it would seem there is a clear need to provide unit tests for this class too, while fixing the bug.

Tags: cisco
Revision history for this message
Sumit Naiksatam (snaiksat) wrote :

Thanks for pointing this out!

Changed in quantum:
status: New → Confirmed
dan wendlandt (danwent)
Changed in quantum:
importance: Undecided → Medium
Edgar Magana (emagana)
Changed in quantum:
assignee: nobody → Edgar Magana (emagana)
tags: added: cisco
Kyle Mestery (mestery)
Changed in quantum:
assignee: Edgar Magana (emagana) → Kyle Mestery (mestery)
Revision history for this message
Daniel Berrange (berrange) wrote :

FYI the following change was an attempt to get the basic libvirt VIF driver into shape for being able to support vnlink/vepa drivers. https://review.openstack.org/#/c/19128/ More work is still needed to get to a point where the end-to-end solution is working. I'm happy to advise on the Nova side of any designs / patches.

Revision history for this message
Kyle Mestery (mestery) wrote :

Thanks Daniel, I've been following your patches, and I will be seeking your help as we clean this bug up and the VM-FEX/vnlink support as well.

Revision history for this message
Kyle Mestery (mestery) wrote :

Moving this to Havana-1 to track what Daniel indicates below. We removed UCS/VM-FEX support from the Cisco plugin in Grizzly, but will bring it back in Havana, thus tracking the issue below for Havana.

Changed in quantum:
milestone: none → havana-1
Revision history for this message
Kyle Mestery (mestery) wrote :

We removed UCSM/VM-FEX from Grizzly, and it's not in Havana yet either. Marking this as invalid. Once we add back support for those features, we will make sure to cover this in that review.

Changed in quantum:
status: Confirmed → Invalid
Thierry Carrez (ttx)
Changed in quantum:
milestone: havana-1 → none
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.