python/qemu: delint; add flake8 config

Mostly, ignore the "no bare except" rule, because flake8 is not
contextual and cannot determine if we re-raise. Pylint can, though, so
always prefer pylint for that.

Signed-off-by: John Snow <jsnow@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200528222129.23826-5-jsnow@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
This commit is contained in:
John Snow 2020-05-28 18:21:29 -04:00 committed by Philippe Mathieu-Daudé
parent 9b8ccd6d5b
commit 8dfac2edb2
4 changed files with 19 additions and 9 deletions

2
python/qemu/.flake8 Normal file
View file

@ -0,0 +1,2 @@
[flake8]
extend-ignore = E722 # Pylint handles this, but smarter.

View file

@ -23,11 +23,12 @@ LOG = logging.getLogger(__name__)
# Mapping host architecture to any additional architectures it can # Mapping host architecture to any additional architectures it can
# support which often includes its 32 bit cousin. # support which often includes its 32 bit cousin.
ADDITIONAL_ARCHES = { ADDITIONAL_ARCHES = {
"x86_64" : "i386", "x86_64": "i386",
"aarch64" : "armhf", "aarch64": "armhf",
"ppc64le" : "ppc64", "ppc64le": "ppc64",
} }
def list_accel(qemu_bin): def list_accel(qemu_bin):
""" """
List accelerators enabled in the QEMU binary. List accelerators enabled in the QEMU binary.
@ -47,6 +48,7 @@ def list_accel(qemu_bin):
# Skip the first line which is the header. # Skip the first line which is the header.
return [acc.strip() for acc in out.splitlines()[1:]] return [acc.strip() for acc in out.splitlines()[1:]]
def kvm_available(target_arch=None, qemu_bin=None): def kvm_available(target_arch=None, qemu_bin=None):
""" """
Check if KVM is available using the following heuristic: Check if KVM is available using the following heuristic:
@ -69,6 +71,7 @@ def kvm_available(target_arch=None, qemu_bin=None):
return False return False
return True return True
def tcg_available(qemu_bin): def tcg_available(qemu_bin):
""" """
Check if TCG is available. Check if TCG is available.

View file

@ -29,6 +29,7 @@ from . import qmp
LOG = logging.getLogger(__name__) LOG = logging.getLogger(__name__)
class QEMUMachineError(Exception): class QEMUMachineError(Exception):
""" """
Exception called when an error in QEMUMachine happens. Exception called when an error in QEMUMachine happens.
@ -62,7 +63,8 @@ class QEMUMachine:
""" """
A QEMU VM A QEMU VM
Use this object as a context manager to ensure the QEMU process terminates:: Use this object as a context manager to ensure
the QEMU process terminates::
with VM(binary) as vm: with VM(binary) as vm:
... ...
@ -185,8 +187,10 @@ class QEMUMachine:
fd_param.append(str(fd)) fd_param.append(str(fd))
devnull = open(os.path.devnull, 'rb') devnull = open(os.path.devnull, 'rb')
proc = subprocess.Popen(fd_param, stdin=devnull, stdout=subprocess.PIPE, proc = subprocess.Popen(
stderr=subprocess.STDOUT, close_fds=False) fd_param, stdin=devnull, stdout=subprocess.PIPE,
stderr=subprocess.STDOUT, close_fds=False
)
output = proc.communicate()[0] output = proc.communicate()[0]
if output: if output:
LOG.debug(output) LOG.debug(output)
@ -485,7 +489,8 @@ class QEMUMachine:
def events_wait(self, events, timeout=60.0): def events_wait(self, events, timeout=60.0):
""" """
events_wait waits for and returns a named event from QMP with a timeout. events_wait waits for and returns a named event
from QMP with a timeout.
events: a sequence of (name, match_criteria) tuples. events: a sequence of (name, match_criteria) tuples.
The match criteria are optional and may be None. The match criteria are optional and may be None.

View file

@ -168,8 +168,8 @@ class QEMUMonitorProtocol:
@param timeout: timeout in seconds (nonnegative float number, or @param timeout: timeout in seconds (nonnegative float number, or
None). The value passed will set the behavior of the None). The value passed will set the behavior of the
underneath QMP socket as described in [1]. Default value underneath QMP socket as described in [1].
is set to 15.0. Default value is set to 15.0.
@return QMP greeting dict @return QMP greeting dict
@raise OSError on socket connection errors @raise OSError on socket connection errors
@raise QMPConnectError if the greeting is not received @raise QMPConnectError if the greeting is not received