diff mbox series

iotests: fix default MT detection

Message ID 20231122121538.32903-1-andrey.drobyshev@virtuozzo.com (mailing list archive)
State New, archived
Headers show
Series iotests: fix default MT detection | expand

Commit Message

Andrey Drobyshev Nov. 22, 2023, 12:15 p.m. UTC
MT is being detected based on "-M help" output, and we're searching for
the line ending with " (default)".  However, in downstream one of the
MTs marked as deprecated might become the default, in which case this
logic breaks as the line would now end with " (default) (deprecated)".
To fix potential issues here, let's relax that requirement and detect
the mere presence of " (default)" line instead.

Signed-off-by: Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>
---
 tests/qemu-iotests/testenv.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Kevin Wolf Nov. 27, 2023, 12:17 p.m. UTC | #1
Am 22.11.2023 um 13:15 hat Andrey Drobyshev geschrieben:
> MT is being detected based on "-M help" output, and we're searching for
> the line ending with " (default)".  However, in downstream one of the
> MTs marked as deprecated might become the default, in which case this
> logic breaks as the line would now end with " (default) (deprecated)".
> To fix potential issues here, let's relax that requirement and detect
> the mere presence of " (default)" line instead.
> 
> Signed-off-by: Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>

Thanks, applied to the block branch. (I did however change "MT" to
"machine type" in the commit message because at first I was confused
what you meant with it.)

Kevin
diff mbox series

Patch

diff --git a/tests/qemu-iotests/testenv.py b/tests/qemu-iotests/testenv.py
index e67ebd254b..3ff38f2661 100644
--- a/tests/qemu-iotests/testenv.py
+++ b/tests/qemu-iotests/testenv.py
@@ -40,7 +40,7 @@  def get_default_machine(qemu_prog: str) -> str:
 
     machines = outp.split('\n')
     try:
-        default_machine = next(m for m in machines if m.endswith(' (default)'))
+        default_machine = next(m for m in machines if ' (default)' in m)
     except StopIteration:
         return ''
     default_machine = default_machine.split(' ', 1)[0]