On 04/06/2017 10:47 PM, Wojtek Porczyk wrote:
On Tue, Apr 04, 2017 at 03:31:27PM +0100, Daniel P. Berrange wrote:
$ python3 ./examples/event-test.py --loop=asyncio --timeout=30 qemu:///session
Thank you for this update. I tested it backported to 3.1.0 with xen:/// using
event-test.py and also with our own code. Looks good to me.
I encountered one small problem, which I believe is orthogonal to the patch series:
On Tue, Apr 04, 2017 at 03:31:32PM +0100, Daniel P. Berrange wrote:
diff --git a/examples/event-test.py b/examples/event-test.py
index 751a140..ac9fbe1 100755
--- a/examples/event-test.py
+++ b/examples/event-test.py
+ netcallbacks = []
+ netcallbacks.append(vc.networkEventRegisterAny(None, libvirt.VIR_NETWORK_EVENT_ID_LIFECYCLE, myNetworkEventLifecycleCallback, None))
With vc = libvirt.open('xen:///') and with libvirt{,-python}-3.1.0 this line causes an
exception:
libvirt.libvirtError: this function is not supported by the connection driver: virConnectNetworkEventRegisterAny
That's because we don't have a network driver for XEN. Usually, for
stateful drivers (those which require daemon to run, e.g. qemu, lxc, ..)
they can use our own bridge driver for network (it creates a bridge to
which domain NICs are plugged in). However, then we have bunch of
stateless driver for which libvirt is just a wrapper over their APIs.
For those we would need a separate network driver that does the API
wrapping. And it looks like there's none for XEN. Not sure whether
there's something to wrap though. I mean I've no idea what XEN
networking capabilities are.
But what we can do here is to surround networkEvenRegisterAny() call
with try {} except () block and ignore ENOSUPP error.
Michal
--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list