[Libvir] RFC: A more convenient 'virsh create' command

Daniel Veillard veillard at redhat.com
Fri Aug 25 18:57:25 UTC 2006

On Fri, Aug 25, 2006 at 05:46:28PM +0100, Daniel P. Berrange wrote:
> The current implementation of 'virsh create' takes an XML file as its only
> parameter & creates a domain from this. This is great if you have a suitable
> XML file already, but if you are just trying to automate some simple tasks
> from the shell then the need to use XML is a little cumbersome. Thus I was
> thinking perhaps we could have an alternate way to define a new VM (keep
> the current XML based way too of course)
> QEMU for example makes it very easy to launch a new VM:
>    qemu -m 256 -hda /path/to/image.dsk -hdc /path/to/boot.iso 
> Taking inspiration from this syntax we could allow:
>    virsh start -m 256 -hda /path/to/image.dsk -hdc /path/to/boot.iso -name Foo
> Internally, the 'start' command would simply transform these command
> line args into the neccessary libvirt XML and then call the normal
> create functions.
> Another way would be have a 'genxml' command, which accepted these list
> of devices / config properties & then printed out appropriate XMl. This
> could be piped to the regular 'virsh create' command
>   virsh genxml -m 256 -hda /path/to/image.dsk -hdc /path/to/boot.iso \
>    -name Foo  | virsh create -
> This isn't so critical for Xen, because people are already used to writing
> config files before creating the domain, but when we get a QEMU backend
> i think such a convenient method for defining new VMs will be neccessary
> to encourage users to use virsh instead of manually calling 'qemu'. Even
> for Xen users it would make shell script easier though :-)

  Okay, but this is dependant on the virtualization used, e.g. test and
xen XML will provide different output. But with the environment variable
patch this can be hidden from the command line.
  Either way is fine, actually the code is gonna be 90% the same, and both
ways sounds useful in slightly different contexts, why not both ?


Red Hat Virtualization group http://redhat.com/virtualization/
Daniel Veillard      | virtualization library  http://libvirt.org/
veillard at redhat.com  | libxml GNOME XML XSLT toolkit  http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine  http://rpmfind.net/

More information about the libvir-list mailing list