From cb63069fc8a6eb8ba52e5a307cfa03e417e3bc0c Mon Sep 17 00:00:00 2001 From: Pete Fotheringham Date: Tue, 25 Nov 2014 14:52:59 +0000 Subject: Document the write extension in the write.help file - Move docstring from .write to .write.help - Rework the content and formatting of the help information --- morphlib/exts/kvm.write | 20 -------------------- morphlib/exts/kvm.write.help | 29 ++++++++++++++++++++++++++--- 2 files changed, 26 insertions(+), 23 deletions(-) diff --git a/morphlib/exts/kvm.write b/morphlib/exts/kvm.write index eeb7c6b5..61c96676 100755 --- a/morphlib/exts/kvm.write +++ b/morphlib/exts/kvm.write @@ -30,26 +30,6 @@ import morphlib.writeexts class KvmPlusSshWriteExtension(morphlib.writeexts.WriteExtension): - '''Create a KVM/LibVirt virtual machine during Morph's deployment. - - The location command line argument is the pathname of the disk image - to be created. The user is expected to provide the location argument - using the following syntax: - - kvm+ssh://HOST/GUEST/PATH - - where: - - * HOST is the host on which KVM/LibVirt is running - * GUEST is the name of the guest virtual machine on that host - * PATH is the path to the disk image that should be created, - on that host - - The extension will connect to HOST via ssh to run libvirt's - command line management tools. - - ''' - location_pattern = '^/(?P[^/]+)(?P/.+)$' def process_args(self, args): diff --git a/morphlib/exts/kvm.write.help b/morphlib/exts/kvm.write.help index 8b5053a5..ad0e25f0 100644 --- a/morphlib/exts/kvm.write.help +++ b/morphlib/exts/kvm.write.help @@ -1,4 +1,27 @@ help: | - The INITRAMFS_PATH option can be used to specify the location of an - initramfs for syslinux to tell Linux to use, rather than booting - the rootfs directly. + + Create a KVM/LibVirt virtual machine during Morph's deployment. + + Parameters: + + * location: a custom URL scheme of the form `kvm+ssh://HOST/GUEST/PATH`, + where: + * HOST is the name of the host on which KVM/LibVirt is running + * GUEST is the name of the guest VM on that host + * PATH is the path to the disk image that should be created, + on that host. For example, + `kvm+ssh://alice@192.168.122.1/testsys/home/alice/testys.img` where + * `alice@192.168.122.1` is the target host as given to ssh, + **from within the development host** (which may be + different from the target host's normal address); + * `testsys` is the name of the new guest VM'; + * `/home/alice/testys.img` is the pathname of the disk image files + on the target host. + * HOSTNAME: the hostname of the **guest** VM within the network into which + it is being deployed + * DISK_SIZE: the size of the VM's primary virtual hard disk + * RAM_SIZE: The amount of RAM that the virtual machine should allocate for + itself from the host. + * VCPUS: the number of virtual CPUs for the VM + * INITRAMFS_PATH: the location of an initramfs for the bootloader to tell + Linux to use, rather than booting the rootfs directly. -- cgit v1.2.1