Remove nova network legacy code to enable ipv6-only vifs

Registered by Amir Sadoughi converts an instance of NetworkInfo into a legacy version of NetworkInfo.

Blueprint information

Russell Bryant
Yaguang Tang
Series goal:
Accepted for havana
Milestone target:
milestone icon 2013.2
Started by
Russell Bryant
Completed by
Russell Bryant

Related branches



From bug 1044383, the following implementation still holds:

From running `grep -nH -R -e "legacy()" .` on the code base I have come up with an approach. Let me know if I have missed anything. My current plan of attack is as follows:

0. Make each of the compute drivers compatible with the current network model (non-legacy), pushing any legacy dependency into the firewall driver.
From my enumeration that means: i. baremetal.BareMetalDriver <bug 1112642> ii. libvirt.LibvirtDriver <bug 1112646>, and iii. vmwareapi.VMwareESXDriver <bug 1112655>.

1. Remove legacy_nwinfo from the nova.virt.driver.ComputeDriver base class. This involves minor code changes (test code and stub drivers) once the previous step is completed.

2. Fix the firewall driver to use the current network model. <bug 1112657>

3. Fix any other legacy-dependent code to use the current network model (e.g. nova.virt.netutils.get_injected_network_template) <bug 1112659>

4. Remove the legacy function from the network model.


Worth noting previous attempts at this for libvirt: (tail end of Folsom) (tail end of Grizzly)

Also, *if* the nova-network firewalling is to be removed in Havana then the job becomes a lot simpler as the virt drivers should no longer care about the addresses of ports. Perhaps someone could confirm if that's in the plan? -- ijw-ubuntu

if not any one working on this, I'd like to pick it up and get it in to Havana . --heut2008

I haven't had the time I expected to work on this blueprint in the Havana release cycle. I'm fine with heut2008 taking it over. --amir-sadoughi

Gerrit topic:,topic:bp/nova-network-legacy,n,z

Addressed by:
    Update BareMetal driver from legacy network to current

Addressed by:
    Update libvirt driver to current

Addressed by:
    Update nova.virt.firewall to use current

Addressed by:
    Remove legacy network info model usage in unit tests

Addressed by:
    Remove deprecated legacy network info model in Hypervisor drivers

Gerrit topic:,topic:bug/1210203,n,z

Addressed by:
    Fix bug by passing correct number of arguments


Work Items

This blueprint contains Public information 
Everyone can see this information.