[libvirt] [PATCH python 0/5] Some fixes and one improvement

Boris Fiuczynski (1): libvirt-override.py: fix sparseSendAll Marc Hartmayer (4): libvirt_qemu/lxc: import 'sys' package libvirt_qemu/lxc: fix a namespace issue libvirt-override.py: remove unused import Allow virConnect to be used as a context manager generator.py | 8 ++++++-- libvirt-override-virConnect.py | 6 ++++++ libvirt-override-virStream.py | 2 +- libvirt-override.py | 1 - 4 files changed, 13 insertions(+), 4 deletions(-) -- 2.13.4

From: Marc Hartmayer <mhartmay@linux.vnet.ibm.com> This fixes the pylint [1] warning "E: 25,16: Undefined variable 'sys' (undefined-variable)". [1] https://www.pylint.org/ Signed-off-by: Marc Hartmayer <mhartmay@linux.vnet.ibm.com> Reviewed-by: Boris Fiuczynski <fiuczy@linux.vnet.ibm.com> Reviewed-by: Bjoern Walk <bwalk@linux.vnet.ibm.com> --- generator.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/generator.py b/generator.py index 74150b72388f..66c53d11d399 100755 --- a/generator.py +++ b/generator.py @@ -1828,6 +1828,8 @@ def qemuBuildWrappers(module): fd.write("# Automatically written part of python bindings for libvirt\n") fd.write("#\n") + fd.write("import sys\n") + fd.write("try:\n") fd.write(" import libvirtmod_qemu\n") fd.write("except ImportError:\n") @@ -1951,6 +1953,8 @@ def lxcBuildWrappers(module): if extra is not None: extra.close() + fd.write("import sys\n") + fd.write("try:\n") fd.write(" import libvirtmod_lxc\n") fd.write("except ImportError:\n") -- 2.13.4

From: Marc Hartmayer <mhartmay@linux.vnet.ibm.com> Signed-off-by: Marc Hartmayer <mhartmay@linux.vnet.ibm.com> Reviewed-by: Bjoern Walk <bwalk@linux.vnet.ibm.com> Reviewed-by: Boris Fiuczynski <fiuczy@linux.vnet.ibm.com> --- generator.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/generator.py b/generator.py index 66c53d11d399..a0fc720ed87b 100755 --- a/generator.py +++ b/generator.py @@ -1896,7 +1896,7 @@ def qemuBuildWrappers(module): if ret[0] != "void": fd.write(" if ret is None: raise libvirt.libvirtError('" + name + "() failed')\n") if ret[0] == "virDomainPtr": - fd.write(" __tmp = virDomain(" + conn + ",_obj=ret)\n") + fd.write(" __tmp = libvirt.virDomain(" + conn + ", _obj=ret)\n") fd.write(" return __tmp\n") else: fd.write(" return ret\n") @@ -2011,7 +2011,7 @@ def lxcBuildWrappers(module): if ret[0] != "void": fd.write(" if ret is None: raise libvirt.libvirtError('" + name + "() failed')\n") if ret[0] == "virDomainPtr": - fd.write(" __tmp = virDomain(" + conn + ",_obj=ret)\n") + fd.write(" __tmp = libvirt.virDomain(" + conn + ", _obj=ret)\n") fd.write(" return __tmp\n") else: fd.write(" return ret\n") -- 2.13.4

From: Boris Fiuczynski <fiuczy@linux.vnet.ibm.com> Variable ret is used before assignment. Signed-off-by: Boris Fiuczynski <fiuczy@linux.vnet.ibm.com> Signed-off-by: Marc Hartmayer <mhartmay@linux.vnet.ibm.com> --- libvirt-override-virStream.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libvirt-override-virStream.py b/libvirt-override-virStream.py index 358a5f6a93df..901c2e6af94e 100644 --- a/libvirt-override-virStream.py +++ b/libvirt-override-virStream.py @@ -258,7 +258,7 @@ got = handler(self, want, opaque) if type(got) is int and got < 0: self.abort() - raise RuntimeError("sparseSendAll handler returned %d" % ret) + raise RuntimeError("sparseSendAll handler returned %d" % got) if not got: break -- 2.13.4

From: Marc Hartmayer <mhartmay@linux.vnet.ibm.com> Signed-off-by: Marc Hartmayer <mhartmay@linux.vnet.ibm.com> Reviewed-by: Boris Fiuczynski <fiuczy@linux.vnet.ibm.com> Reviewed-by: Bjoern Walk <bwalk@linux.vnet.ibm.com> --- libvirt-override.py | 1 - 1 file changed, 1 deletion(-) diff --git a/libvirt-override.py b/libvirt-override.py index b0b24ef93d63..ba01c89f50b4 100644 --- a/libvirt-override.py +++ b/libvirt-override.py @@ -16,7 +16,6 @@ except ImportError: if str(cyg_e).count("No module named"): raise lib_e -import types # The root of all libvirt errors. class libvirtError(Exception): -- 2.13.4

From: Marc Hartmayer <mhartmay@linux.vnet.ibm.com> The libvirt python bindings are now more 'pythonic' as virConnect can now be used as a context manager. For example, it's possible to write the following code: with libvirt.open() as conn: # do something with the connection... print(conn.listAllDomains()) At the end of this with-block the connection will be closed automatically. Signed-off-by: Marc Hartmayer <mhartmay@linux.vnet.ibm.com> Reviewed-by: Bjoern Walk <bwalk@linux.vnet.ibm.com> Reviewed-by: Boris Fiuczynski <fiuczy@linux.vnet.ibm.com> --- libvirt-override-virConnect.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/libvirt-override-virConnect.py b/libvirt-override-virConnect.py index f26e65a99ee1..a24eae72d6d6 100644 --- a/libvirt-override-virConnect.py +++ b/libvirt-override-virConnect.py @@ -11,6 +11,12 @@ libvirtmod.virConnectClose(self._o) self._o = None + def __enter__(self): + return self + + def __exit__(self, exc_type_, exc_value_, traceback_): + self.close() + def domainEventDeregister(self, cb): """Removes a Domain Event Callback. De-registering for a domain callback will disable delivery of this event type """ -- 2.13.4

On 05/16/2018 10:24 AM, Marc Hartmayer wrote:
Boris Fiuczynski (1): libvirt-override.py: fix sparseSendAll
Marc Hartmayer (4): libvirt_qemu/lxc: import 'sys' package libvirt_qemu/lxc: fix a namespace issue libvirt-override.py: remove unused import Allow virConnect to be used as a context manager
generator.py | 8 ++++++-- libvirt-override-virConnect.py | 6 ++++++ libvirt-override-virStream.py | 2 +- libvirt-override.py | 1 - 4 files changed, 13 insertions(+), 4 deletions(-)
ACKed and pushed. Michal

On Wed, May 16, 2018 at 10:54 AM +0200, Michal Privoznik <mprivozn@redhat.com> wrote:
On 05/16/2018 10:24 AM, Marc Hartmayer wrote:
Boris Fiuczynski (1): libvirt-override.py: fix sparseSendAll
Marc Hartmayer (4): libvirt_qemu/lxc: import 'sys' package libvirt_qemu/lxc: fix a namespace issue libvirt-override.py: remove unused import Allow virConnect to be used as a context manager
generator.py | 8 ++++++-- libvirt-override-virConnect.py | 6 ++++++ libvirt-override-virStream.py | 2 +- libvirt-override.py | 1 - 4 files changed, 13 insertions(+), 4 deletions(-)
ACKed and pushed.
Thanks!
Michal
-- Beste Grüße / Kind regards Marc Hartmayer IBM Deutschland Research & Development GmbH Vorsitzende des Aufsichtsrats: Martina Koederitz Geschäftsführung: Dirk Wittkopp Sitz der Gesellschaft: Böblingen Registergericht: Amtsgericht Stuttgart, HRB 243294
participants (2)
-
Marc Hartmayer
-
Michal Privoznik