aboutsummaryrefslogtreecommitdiff
path: root/python
diff options
context:
space:
mode:
authorVladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>2023-10-06 18:41:16 +0300
committerJohn Snow <jsnow@redhat.com>2023-10-12 14:21:43 -0400
commit4e620ff48f31493d61c98c6770595b5b242b837d (patch)
tree3387b3e86fa1819fe1e6cb0ad5f5d8461e71a19b /python
parent684750ab4f8a3ad69512b71532408be3ac2547d4 (diff)
python/machine.py: upgrade vm.cmd() method
The method is not popular in iotests, we prefer use vm.qmp() and then check success by hand. But that's not optimal. To simplify movement to vm.cmd() let's support same interface improvements like in vm.qmp(). Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru> Reviewed-by: Eric Blake <eblake@redhat.com> Message-id: 20231006154125.1068348-7-vsementsov@yandex-team.ru Signed-off-by: John Snow <jsnow@redhat.com>
Diffstat (limited to 'python')
-rw-r--r--python/qemu/machine/machine.py12
1 files changed, 11 insertions, 1 deletions
diff --git a/python/qemu/machine/machine.py b/python/qemu/machine/machine.py
index eae193eb00..31cb9d617d 100644
--- a/python/qemu/machine/machine.py
+++ b/python/qemu/machine/machine.py
@@ -708,13 +708,23 @@ class QEMUMachine:
return ret
def cmd(self, cmd: str,
- conv_keys: bool = True,
+ args_dict: Optional[Dict[str, object]] = None,
+ conv_keys: Optional[bool] = None,
**args: Any) -> QMPReturnValue:
"""
Invoke a QMP command.
On success return the response dict.
On failure raise an exception.
"""
+ if args_dict is not None:
+ assert not args
+ assert conv_keys is None
+ args = args_dict
+ conv_keys = False
+
+ if conv_keys is None:
+ conv_keys = True
+
qmp_args = self._qmp_args(conv_keys, args)
ret = self._qmp.cmd(cmd, **qmp_args)
if cmd == 'quit':