qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Anthony Liguori <aliguori@us.ibm.com>
To: qemu-devel@nongnu.org
Cc: Anthony Liguori <aliguori@us.ibm.com>,
	Eric Blake <eblake@redhat.com>,
	Eduardo Habkost <ehabkost@redhat.com>,
	Gerd Hoffman <kraxel@redhat.com>
Subject: [Qemu-devel] [PATCH 9/9] Add a management tool writer's guide
Date: Mon, 19 Mar 2012 10:09:23 -0500	[thread overview]
Message-ID: <1332169763-30665-10-git-send-email-aliguori@us.ibm.com> (raw)
In-Reply-To: <1332169763-30665-1-git-send-email-aliguori@us.ibm.com>

I guess it's long overdue at this point, but let's use it to explain how to
properly use -query-capabilities.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
---
 docs/management-tools.md |   31 +++++++++++++++++++++++++++++++
 1 files changed, 31 insertions(+), 0 deletions(-)
 create mode 100644 docs/management-tools.md

diff --git a/docs/management-tools.md b/docs/management-tools.md
new file mode 100644
index 0000000..d879e48
--- /dev/null
+++ b/docs/management-tools.md
@@ -0,0 +1,31 @@
+Writing a QEMU Management Tool
+==============================
+
+This is a guide on writing a QEMU management tool.  This document outlines
+which interfaces the QEMU project exports and will support long term.
+
+Specifying options
+------------------
+
+The preferred way for a management tool to specify options to QEMU is to create
+a configuration file and use '-readconfig' on the command line.  We prefer this
+interface over direct use of command line options because this interface
+supports introspection in a machine friendly way.
+
+Determining if an option is supported
+-------------------------------------
+
+A management tool should use the '-query-capabilities' option to determine what
+the capabilities of the current QEMU executable is.  The 'config' section of
+the resulting JSON object describes all of the config sections that are
+currently supported.
+
+Many options currently fall into the 'system' section and some of these options
+have complex syntax.  Management tools should assume that these syntaxes will
+never change and never be extended.  Whenever there is a need to change or
+extend this syntax, we will first convert the option to use a stand alone
+section.
+
+While help text is available, the help text *should not* be parsed to attempt to
+determine if the option has changed.  The help text is exposed merely as a stop
+gap to help libvirt transition to this new format.
-- 
1.7.5.4

  parent reply	other threads:[~2012-03-19 15:10 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-19 15:09 [Qemu-devel] [RFC PATCH 0/9] qemu capabilities reporting and config changes Anthony Liguori
2012-03-19 15:09 ` [Qemu-devel] [PATCH 1/9] qemu-config: fix -writeconfig when using qemu_opt_set_bool Anthony Liguori
2012-03-19 15:09 ` [Qemu-devel] [PATCH 2/9] qemu-config: friends don't let friends use sscanf Anthony Liguori
2012-03-19 15:09 ` [Qemu-devel] [PATCH 3/9] vl: refactor command line parsing to allow options to be set via config Anthony Liguori
2012-03-19 15:09 ` [Qemu-devel] [PATCH 4/9] vl: mark system configuration options in qemu-options.hx Anthony Liguori
2012-03-19 15:09 ` [Qemu-devel] [PATCH 5/9] vl: enable system configuration to be used Anthony Liguori
2012-03-19 15:09 ` [Qemu-devel] [PATCH 6/9] vl: parse all options via QemuOpts Anthony Liguori
2012-03-19 15:09 ` [Qemu-devel] [PATCH 7/9] qmp: expose a command to query capabilities of config parser Anthony Liguori
2012-03-19 20:10   ` Eric Blake
2012-03-19 20:19     ` Anthony Liguori
2012-03-19 20:31       ` Eric Blake
2012-03-19 20:41         ` Anthony Liguori
2012-03-19 15:09 ` [Qemu-devel] [PATCH 8/9] vl: add -query-capabilities Anthony Liguori
2012-03-20  7:49   ` Gerd Hoffmann
2012-03-20 10:33     ` Daniel P. Berrange
2012-03-20 19:39   ` Eduardo Habkost
2012-03-19 15:09 ` Anthony Liguori [this message]
2012-03-19 16:09 ` [Qemu-devel] [RFC PATCH 0/9] qemu capabilities reporting and config changes Paolo Bonzini
2012-03-19 16:31   ` Anthony Liguori
2012-03-19 16:33     ` Paolo Bonzini
2012-03-19 16:41       ` Anthony Liguori
2012-03-19 16:45         ` Paolo Bonzini
2012-03-19 16:53           ` Anthony Liguori
2012-03-19 17:03             ` Paolo Bonzini
2012-03-20  7:54     ` Gerd Hoffmann
2012-03-20 19:47   ` Eduardo Habkost

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1332169763-30665-10-git-send-email-aliguori@us.ibm.com \
    --to=aliguori@us.ibm.com \
    --cc=eblake@redhat.com \
    --cc=ehabkost@redhat.com \
    --cc=kraxel@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).