
On Tue, Sep 14, 2021 at 05:16:11PM +0200, Peter Krempa wrote:
Issuing simple QMP commands is pain as they need to be wrapped by the JSON wrapper:
{ "execute": "COMMAND" }
and optionally also:
{ "execute": "COMMAND", "arguments":...}
For simple commands without arguments we can add syntax sugar to virsh which allows simple usage of QMP and additionally prepares also for passing through of the 'arguments' section:
virsh qemu-monitor-command --qmpwrap $VM query-status
is equivalent to
virsh qemu-monitor-command $VM '{"execute":"query-status"}'
and
virsh qemu-monitor-command --qmpwrap $VM query-named-block-nodes '{"flat":true}'
is equivalent to
virsh qemu-monitor-command $VM '{"execute":"query-named-block-nodes", "arguments":{"flat":true}}'
Signed-off-by: Peter Krempa <pkrempa@redhat.com> ---
I originally called the flag '--qmp' but that could be confusing given that we have '--hmp'. On the other hand it's shorter so I wouldn't mind turning it back to '--qmp'.
How about just following a DWIM approach and not adding any flag These two cases are trivially distinguished: virsh qemu-monitor-command $VM '{"execute":"query-named-block-nodes", "arguments":{"flat":true}}' virsh qemu-monitor-command $VM query-named-block-nodes '{"flat":true}' because the second doesn't start with a '{' Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|