[libvirt] [PATCH] virsh: Pretty the output of qemu-agent-command

Daniel P. Berrange berrange at redhat.com
Tue May 14 16:27:37 UTC 2013


On Tue, May 14, 2013 at 11:36:01PM +0800, Osier Yang wrote:
> This adds a new option "--pretty" for qemu-agent-command, to
> pretty-format the returned JSON string.
> ---
>  tools/virsh-domain.c | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)
> 
> diff --git a/tools/virsh-domain.c b/tools/virsh-domain.c
> index 546b182..bb94ac1 100644
> --- a/tools/virsh-domain.c
> +++ b/tools/virsh-domain.c
> @@ -7605,6 +7605,10 @@ static const vshCmdOptDef opts_qemu_agent_command[] = {
>       .type = VSH_OT_BOOL,
>       .help = N_("execute command without timeout")
>      },
> +    {.name = "pretty",
> +     .type = VSH_OT_BOOL,
> +     .help = N_("pretty-print the output")
> +    },
>      {.name = "cmd",
>       .type = VSH_OT_ARGV,
>       .flags = VSH_OFLAG_REQ,
> @@ -7626,6 +7630,7 @@ cmdQemuAgentCommand(vshControl *ctl, const vshCmd *cmd)
>      const vshCmdOpt *opt = NULL;
>      virBuffer buf = VIR_BUFFER_INITIALIZER;
>      bool pad = false;
> +    virJSONValuePtr pretty = NULL;
>  
>      dom = vshCommandOptDomain(ctl, cmd, NULL);
>      if (dom == NULL)
> @@ -7670,6 +7675,17 @@ cmdQemuAgentCommand(vshControl *ctl, const vshCmd *cmd)
>      }
>      result = virDomainQemuAgentCommand(dom, guest_agent_cmd, timeout, flags);
>  
> +    if (vshCommandOptBool(cmd, "pretty")) {
> +        char *tmp;
> +        pretty = virJSONValueFromString(result);
> +        if (pretty && (tmp = virJSONValueToString(pretty, true))) {
> +            VIR_FREE(result);
> +            result = tmp;
> +        } else {
> +            vshResetLibvirtError();
> +        }
> +    }
> +
>      vshPrint(ctl, "%s\n", result);
>  
>      ret = true;

ACK


Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|




More information about the libvir-list mailing list