mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-08-05 08:23:48 +00:00
2019b7caca
The current output of 'blockjob [--info]' is a single line designed for human consumption; it's not very nice for machine parsing. Furthermore, I have plans to modify the line in response to the new flag for controlling bandwidth units. Solve that by adding a --raw parameter, which outputs information closer to the C struct. $ virsh blockjob testvm1 vda --raw type=Block Copy bandwidth=1 cur=197120 end=197120 The information is indented, because I'd like for a later patch to add a mode that iterates over all the vm's disks with status for each; in that mode, each block name would be listed unindented before information (if any) about that block. Now that we have a raw mode, we can guarantee that it won't change format over time. Any app that cares about parsing the output can try --raw, and if it fails, know that it was talking to an older virsh and fall back to parsing the human-readable format which had not changed until now; meanwhile, when not using --raw, we have freed future virsh to change the output to whatever makes sense. My first change to human mode: this command now guarantees a line is printed on successful use of the API, even when the API did not find a current block job (consistent with the rest of virsh). Bonus: https://bugzilla.redhat.com/show_bug.cgi?id=1135441 complained that this message was confusing: $ virsh blockjob test1 hda --async --bandwidth 10 error: conflict between --abort, --info, and --bandwidth modes even though the man page already documents that --async implies abort mode, all because '--abort' wasn't present in the command line. Since I'm adding another case where options are tied to or imply a mode, I changed that error to: error: conflict between abort, info, and bandwidth modes * tools/virsh-domain.c (cmdBlockJob): Add --raw parameter; tweak error wording. * tools/virsh.pod (blockjob): Document it. Signed-off-by: Eric Blake <eblake@redhat.com> |
||
---|---|---|
.. | ||
wireshark | ||
libvirt_win_icon_16x16.ico | ||
libvirt_win_icon_32x32.ico | ||
libvirt_win_icon_48x48.ico | ||
libvirt_win_icon_64x64.ico | ||
libvirt-guests.init.in | ||
libvirt-guests.service.in | ||
libvirt-guests.sh.in | ||
libvirt-guests.sysconf | ||
Makefile.am | ||
virsh_win_icon.rc | ||
virsh-console.c | ||
virsh-console.h | ||
virsh-domain-monitor.c | ||
virsh-domain-monitor.h | ||
virsh-domain.c | ||
virsh-domain.h | ||
virsh-edit.c | ||
virsh-host.c | ||
virsh-host.h | ||
virsh-interface.c | ||
virsh-interface.h | ||
virsh-network.c | ||
virsh-network.h | ||
virsh-nodedev.c | ||
virsh-nodedev.h | ||
virsh-nwfilter.c | ||
virsh-nwfilter.h | ||
virsh-pool.c | ||
virsh-pool.h | ||
virsh-secret.c | ||
virsh-secret.h | ||
virsh-snapshot.c | ||
virsh-snapshot.h | ||
virsh-volume.c | ||
virsh-volume.h | ||
virsh.c | ||
virsh.h | ||
virsh.pod | ||
virt-host-validate-common.c | ||
virt-host-validate-common.h | ||
virt-host-validate-lxc.c | ||
virt-host-validate-lxc.h | ||
virt-host-validate-qemu.c | ||
virt-host-validate-qemu.h | ||
virt-host-validate.c | ||
virt-login-shell.c | ||
virt-login-shell.conf | ||
virt-login-shell.pod | ||
virt-pki-validate.in | ||
virt-sanlock-cleanup.in | ||
virt-xml-validate.in |