Add 'ovs_interfaceid' to nova network VIF model

Instead of relying on the hypervisor VIF drivers to make up
the correct 'interfaceid' parameter based on the VIF uuid,
explicitly tell them what the ovs interfaceid value should
be.

Blueprint: libvirt-vif-driver
Change-Id: I77bb1bcb8f38c8c6e20e9ccbbbd490b251f32fef
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Move helper APIs for OVS ports into linux_net

The libvirt vif driver impls have some helper APIs for creating
and deleteing OVS bridge ports. These are not specific to libvirt,
so move them into the linux_net class which holds other general
Linux networking helper APIs.

With this change LibvirtHybridOVSBridgeDriver no longer needs
to inherit from LibvirtOpenVswitchDriver.

Blueprint: libvirt-vif-driver
Change-Id: I520c23f9dc9d64f834dec875fb49d17b43abd527
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Remove duplicated tapdev creation code from libvirt VIF

Move the 'create_tap_dev' method out of the linux_net class
QuantumLinuxBridgeInterfaceDriver, to be a standalone method.
Make the libvirt LibvirtOpenVswitchDriver call this method
instead of duplicating the tapdev creation code

Blueprint: libvirt-vif-driver
Change-Id: Ib9b5fb3aed5e339464c4f367179911166f2cddfb
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Merge "Add 'ovs_interfaceid' to nova network VIF model"
Merge "Move helper APIs for OVS ports into linux_net"
Merge "Remove duplicated tapdev creation code from libvirt VIF"