Marcin Mirecki has posted comments on this change.
Change subject: draft: vm_migration_libvirt_hook_plugins ......................................................................
Patch Set 4:
During vm migration we invoke a libvirt hook: vm_migrate_hook.py. This was added recently, and adds some special ovs handling to our vNics. But, this change broke all hooks which relied on modifying the nic domxml, like: vmfex, openstack, and now the ovn hook. These hooks applied custom changes to the NIC xml. These custom changes were now lost, as a result of vm_migrate_hook applying the special ovs handling. So we needed a way to disable this special handling for some of the NICs. To be able to do it for any hooks, we needed something easily extendable (as for example this could break future external network providers), so we went for plugins. We tried some other options (like using the existing vdsm hooks) but these looked even worse.
Please note that this is not something that introduces something new, but something which tries to fix the functionality broken by introducing the libvirt hook. So far everyone agrees that this is not a nice solution, but so far no one was able to suggest any better. If you don't agree with the way this is solved, please suggest a nicer alternative.