From: John Snow <js...@redhat.com> With the exceptional 'create' calls removed in the prior commit, change qemu_img_log() and img_info_log() to call qemu_img() directly instead.
For now, allow these calls to qemu-img to return non-zero on the basis that any unusual output will be logged anyway. The very next commit begins to enforce a successful exit code by default even for the logged functions. Signed-off-by: John Snow <js...@redhat.com> Message-Id: <20220321201618.903471-18-js...@redhat.com> Reviewed-by: Eric Blake <ebl...@redhat.com> Signed-off-by: Hanna Reitz <hre...@redhat.com> --- tests/qemu-iotests/iotests.py | 26 +++++++------------------- 1 file changed, 7 insertions(+), 19 deletions(-) diff --git a/tests/qemu-iotests/iotests.py b/tests/qemu-iotests/iotests.py index d006f56127..1771d01977 100644 --- a/tests/qemu-iotests/iotests.py +++ b/tests/qemu-iotests/iotests.py @@ -207,15 +207,6 @@ def qemu_img_create_prepare_args(args: List[str]) -> List[str]: return result -def qemu_img_pipe_and_status(*args: str) -> Tuple[str, int]: - """ - Run qemu-img and return both its output and its exit code - """ - is_create = bool(args and args[0] == 'create') - full_args = qemu_img_args + qemu_img_create_prepare_args(list(args)) - return qemu_tool_pipe_and_status('qemu-img', full_args, - drop_successful_output=is_create) - def qemu_img(*args: str, check: bool = True, combine_stdio: bool = True ) -> 'subprocess.CompletedProcess[str]': """ @@ -321,17 +312,14 @@ def qemu_img_info(*args: str) -> Any: def qemu_img_map(*args: str) -> Any: return qemu_img_json('map', "--output", "json", *args) -def qemu_img_pipe(*args: str) -> str: - '''Run qemu-img and return its output''' - return qemu_img_pipe_and_status(*args)[0] - -def qemu_img_log(*args): - result = qemu_img_pipe(*args) - log(result, filters=[filter_testfiles]) +def qemu_img_log(*args: str) -> 'subprocess.CompletedProcess[str]': + result = qemu_img(*args, check=False) + log(result.stdout, filters=[filter_testfiles]) return result -def img_info_log(filename, filter_path=None, use_image_opts=False, - extra_args=()): +def img_info_log(filename: str, filter_path: Optional[str] = None, + use_image_opts: bool = False, extra_args: Sequence[str] = (), + ) -> None: args = ['info'] if use_image_opts: args.append('--image-opts') @@ -340,7 +328,7 @@ def img_info_log(filename, filter_path=None, use_image_opts=False, args += extra_args args.append(filename) - output = qemu_img_pipe(*args) + output = qemu_img(*args, check=False).stdout if not filter_path: filter_path = filename log(filter_img_info(output, filter_path)) -- 2.35.1