Re: [PATCH v2 29/31] iotests: Introduce qemu_nbd_list_log()

2020-09-25 Thread Max Reitz
On 24.09.20 17:27, Kevin Wolf wrote:
> Add a function to list the NBD exports offered by an NBD server.
> 
> Signed-off-by: Kevin Wolf 
> ---
>  tests/qemu-iotests/iotests.py | 13 -
>  1 file changed, 12 insertions(+), 1 deletion(-)

Reviewed-by: Max Reitz 



signature.asc
Description: OpenPGP digital signature


[PATCH v2 29/31] iotests: Introduce qemu_nbd_list_log()

2020-09-24 Thread Kevin Wolf
Add a function to list the NBD exports offered by an NBD server.

Signed-off-by: Kevin Wolf 
---
 tests/qemu-iotests/iotests.py | 13 -
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/tests/qemu-iotests/iotests.py b/tests/qemu-iotests/iotests.py
index 81edf8adbf..cb9f90f737 100644
--- a/tests/qemu-iotests/iotests.py
+++ b/tests/qemu-iotests/iotests.py
@@ -67,7 +67,8 @@ if os.environ.get('QEMU_IO_OPTIONS_NO_FMT'):
 qemu_io_args_no_fmt += \
 os.environ['QEMU_IO_OPTIONS_NO_FMT'].strip().split(' ')
 
-qemu_nbd_args = [os.environ.get('QEMU_NBD_PROG', 'qemu-nbd')]
+qemu_nbd_prog = os.environ.get('QEMU_NBD_PROG', 'qemu-nbd')
+qemu_nbd_args = [qemu_nbd_prog]
 if os.environ.get('QEMU_NBD_OPTIONS'):
 qemu_nbd_args += os.environ['QEMU_NBD_OPTIONS'].strip().split(' ')
 
@@ -282,6 +283,13 @@ def qemu_nbd_early_pipe(*args: str) -> Tuple[int, str]:
connect_stderr=False)
 return returncode, output if returncode else ''
 
+def qemu_nbd_list_log(*args: str) -> str:
+'''Run qemu-nbd to list remote exports'''
+full_args = [qemu_nbd_prog, '-L'] + list(args)
+output, _ = qemu_tool_pipe_and_status('qemu-nbd', full_args)
+log(output, filters=[filter_testfiles, filter_nbd_exports])
+return output
+
 @contextmanager
 def qemu_nbd_popen(*args):
 '''Context manager running qemu-nbd within the context'''
@@ -415,6 +423,9 @@ def filter_qmp_imgfmt(qmsg):
 return value
 return filter_qmp(qmsg, _filter)
 
+def filter_nbd_exports(output: str) -> str:
+return re.sub(r'((min|opt|max) block): [0-9]+', r'\1: XXX', output)
+
 
 Msg = TypeVar('Msg', Dict[str, Any], List[Any], str)
 
-- 
2.25.4