[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [Qemu-devel] [PATCH 1/3] iotests.py: Add qemu_nbd_pipe(
From: |
Eric Blake |
Subject: |
Re: [Qemu-block] [Qemu-devel] [PATCH 1/3] iotests.py: Add qemu_nbd_pipe() |
Date: |
Mon, 21 Jan 2019 14:55:01 -0600 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0 |
On 12/21/18 5:47 PM, Max Reitz wrote:
> In some cases, we may want to deal with qemu-nbd errors (e.g. by
> launching it in a different configuration until it no longer throws
> any). In that case, we do not want its output ending up in the test
> output.
>
> It may still be useful for handling the error, though, so add a new
> function that works basically like qemu_nbd(), only that it returns the
> qemu-nbd output instead of making it end up in the log. In contrast to
> qemu_img_pipe(), it does still return the exit code as well, though,
In contrast to qemu_nbd(),
> because that is even more important for error handling.
>
> Signed-off-by: Max Reitz <address@hidden>
> ---
> tests/qemu-iotests/iotests.py | 14 ++++++++++++++
> 1 file changed, 14 insertions(+)
>
> diff --git a/tests/qemu-iotests/iotests.py b/tests/qemu-iotests/iotests.py
> index d537538ba0..9c3eb9e2f8 100644
> --- a/tests/qemu-iotests/iotests.py
> +++ b/tests/qemu-iotests/iotests.py
> @@ -190,6 +190,20 @@ def qemu_nbd(*args):
> '''Run qemu-nbd in daemon mode and return the parent's exit code'''
> return subprocess.call(qemu_nbd_args + ['--fork'] + list(args))
>
> +def qemu_nbd_pipe(*args):
> + '''Run qemu-nbd in daemon mode and return both the parent's exit code
> + and its output'''
> + subp = subprocess.Popen(qemu_nbd_args + ['--fork'] + list(args),
> + stdout=subprocess.PIPE,
> + stderr=subprocess.STDOUT,
> + universal_newlines=True)
> + exitcode = subp.wait()
> + if exitcode < 0:
> + sys.stderr.write('qemu-nbd received signal %i: %s\n' %
> + (-exitcode,
> + ' '.join(qemu_nbd_args + ['--fork'] + list(args))))
> + return exitcode, subp.communicate()[0]
> +
Reviewed-by: Eric Blake <address@hidden>
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3226
Virtualization: qemu.org | libvirt.org
signature.asc
Description: OpenPGP digital signature
- Re: [Qemu-block] [Qemu-devel] [PATCH 1/3] iotests.py: Add qemu_nbd_pipe(),
Eric Blake <=