summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Version 1.19.49.Richard W.M. Jones2012-10-0920-27446/+28953
|
* btrfs: Add a workaround for btrfs failures seen with kernel 3.7.0.Richard W.M. Jones2012-10-091-0/+7
| | | | | | | See: https://bugzilla.redhat.com/show_bug.cgi?id=863978 and: http://thread.gmane.org/gmane.comp.file-systems.btrfs/20257
* launch: appliance is optionalOlaf Hering2012-10-091-8/+14
| | | | | | | | | | | | | | | | | # virt-filesystems -v -d 6326ad4e-5805-2ab4-1338-d1dad8c76162 --all libguestfs: libvirt version = 10002 libguestfs: [00000ms] connect to libvirt libguestfs: [00001ms] get libvirt capabilities libguestfs: [00234ms] build appliance libguestfs: [00234ms] create libvirt XML libguestfs: error: error constructing libvirt XML at "xmlTextWriterWriteAttribute (xo, BAD_CAST "file", BAD_CAST appliance)": No such file or directory libguestfs: closing guestfs handle 0x656270 (state 0) # ls -lh /usr/lib64/guestfs/* -rw-r--r-- 1 root root 13M Oct 8 16:15 /usr/lib64/guestfs/initramfs.x86_64.img -rw-r--r-- 1 root root 3.7M Oct 6 09:25 /usr/lib64/guestfs/vmlinuz.x86_64 Signed-off-by: Olaf Hering <olaf@aepfle.de>
* Add support for hotplugging (removing disks).Richard W.M. Jones2012-10-0910-10/+383
| | | | | | | | New API: remove-drive. Note because of a bug in fuser, this only works with psmisc >= 22.20. This also updates the hotplugging tests.
* Add support for hotplugging (adding disks) to the libvirt attach-method.Richard W.M. Jones2012-10-0814-28/+386
| | | | | | | | | | | | | When libvirt is used, we can allow disks to be hotplugged. guestfs_add_drive can be called after launch to hot-add a disk. When a disk is hot-added, we first ask libvirt to add the disk to the appliance, then we make an internal call into the appliance to get it to wait for the disk to appear (ie. udev_settle ()). Hot-added disks are tracked in the g->drives array. This also adds a test.
* launch: Add add_drive 'label' option.Richard W.M. Jones2012-10-0814-9/+311
| | | | | | | | | | | | | | | | | | | | | New API: list-disk-labels Allow the user to pass an optional disk label when adding a drive. This is passed through to qemu / libvirt using the disk serial field, and from there to the appliance which exposes it through udev, creating a special alias of the device /dev/disk/guestfs/<label>. Partitions are named /dev/disk/guestfs/<label><partnum>. virtio-blk and virtio-scsi limit the serial field to 20 bytes. We further limit the name to maximum 20 ASCII characters in [a-zA-Z]. list-devices and list-partitions are not changed: these calls still return raw block device names. However a new call, list-disk-labels, returns a hash table allowing callers to map between disk labels, and block device and partition names. This commit also includes a test.
* launch: libvirt: Create qcow2 overlays for read-only drives and the appliance.Richard W.M. Jones2012-10-081-79/+219
| | | | | | | | | | | | | Instead of adding the snapshot=on option via <qemu:arg>, create qcow2 overlays for any read-only drives and the appliance using 'qemu-img create' + a temporary file. This is a workaround for missing support for <transient/> in libvirt's qemu driver. Also for the unpredictable way that libvirtd handles $TMPDIR: we want to control where the temporary disk is created. Currently it is also much slower, because qemu-img is slow. However we hope to fix qemu upstream.
* launch: Make g->drives into an array (was a linked list).Richard W.M. Jones2012-10-087-89/+113
| | | | Using an array simplifies the implementation of hotplugging.
* Version 1.19.48.1.19.48Richard W.M. Jones2012-10-071-1/+1
| | | | | | We need to regenerate the tarball because the previous one had the guestfsd man page missing. Hence bumped version number.
* daemon: Add guestfsd.pod to EXTRA_DIST.Richard W.M. Jones2012-10-071-1/+3
| | | | This fixes commit df2469a48f4641bdfe26a4179dd946df190fa970.
* Version 1.19.47.1.19.47Richard W.M. Jones2012-10-0620-14069/+30748
|
* launch: Add private data pointer to the struct drive.Richard W.M. Jones2012-10-062-0/+6
| | | | This can be used by the attach-method, eg. for libvirt-only data.
* launch: add_null_drive: Force null drive to be writable.Richard W.M. Jones2012-10-061-0/+5
| | | | | Because we create a special file, there is no point forcing qemu to create an overlay as well. Save time by setting readonly = 0.
* launch: Rearrange code for adding drives to the g->drives list in the handle.Richard W.M. Jones2012-10-062-42/+62
| | | | This is just code motion.
* build: Use 'tmp-d' as name of temporary directory instead of 'tmp'.Richard W.M. Jones2012-10-061-6/+6
| | | | | | | When building supermin.d/daemon.img, use 'tmp-d' instead of 'tmp' as the name of the temporary directory. This is just code motion.
* docs: add_drive: Clean up documentation of the 'filename' parameter.Richard W.M. Jones2012-10-061-9/+6
| | | | | Also, remove duplicate documentation of using '/dev/null' as the filename.
* tests: Fix rhbz690819.sh to skip when attach-method is libvirt.Richard W.M. Jones2012-10-061-0/+6
| | | | | | | This sets the iface parameter (implicitly), which is not supported yet by the libvirt backend. This updates commit 8e198dc1c50fcdba6720b23da478ef75cc979733.
* FAQ: Document debug* and internal* functions in the FAQ.Richard W.M. Jones2012-10-061-0/+17
|
* launch: libvirt: The drive 'iface' parameter is not yet supported.Richard W.M. Jones2012-10-031-0/+6
| | | | | We could add support, but at the moment return an error if the user tries to use the iface parameter.
* docs: Minor cleanup of documentation for add_drive 'name' parameter.Richard W.M. Jones2012-10-031-2/+3
|
* syntax: Use __PATTERNS__ instead of @PATTERNS@ in podwrapper man pages.Richard W.M. Jones2012-10-039-35/+35
| | | | | It is slightly dangerous to use @PATTERNS@, since these might be substituted by autoconf when they appear in Makefile.am files.
* docs: Add guestfsd(8) man page.Richard W.M. Jones2012-10-037-0/+142
|
* Version 1.19.46.1.19.46Richard W.M. Jones2012-10-0120-17458/+1265
|
* configure: Rearrange build options report in ./configure output.Richard W.M. Jones2012-10-011-11/+11
| | | | | This had accreted over a long period of time, so it wasn't arranged very logically.
* daemon: When sorting devices, don't fail on mix of /dev/sd and /dev/vdRichard W.M. Jones2012-09-281-0/+8
| | | | | | | | | | | | | | (RHBZ#858128). If compare_device_names was given two devices with devices with different interfaces (eg. /dev/sda and /dev/vda) then it would try to compare the partition numbers, and fail when it could parse them. It's arguable what we should be doing in this case (except for strongly discouraging people from using the interface feature), but let's at least not cause the daemon to assert-fail. Found by Red Hat QA, thanks Mohua Li.
* inspection: Fix calls to case_sensitive_path (RHBZ#858126).Richard W.M. Jones2012-09-285-34/+35
| | | | | | | | | | | | | | | | | | | | | Don't assume that if guestfs_case_sensitive_path returns NULL, that it means the file does not exist. The (previously undefined) behaviour of case_sensitive_path was that a NULL return meant "either the file doesn't exist or some other error". However in commit 973581780d8a006f336684fef6762801402d775d this was changed so that if the last element of the path didn't exist, it was assumed to be a new file and the (non-NULL) path of the new file is returned. This change breaks code (including in libguestfs) which tries to use case_sensitive_path as a dual-purpose call to fix-up a path for Windows and test if the file exists. Such code should be rewritten so that it explicitly tests for file existence after calling case_sensitive_path. I examined all the calls to case_sensitive_path in libguestfs and modified them where necessary.
* virt-edit: If case_sensitive_path returns an error, exit.Richard W.M. Jones2012-09-281-0/+2
| | | | | | | The 'windows_path' function was blindly copied from virt-cat. In virt-cat, errors are checked by the caller to 'windows_path'. But virt-edit lacks this check. Change the function in virt-edit to add a check and exit on error.
* Version 1.19.45.1.19.45Richard W.M. Jones2012-09-2620-4793/+5343
|
* sysprep: Typo in man page: resets -> reset.Richard W.M. Jones2012-09-261-1/+1
|
* run: Label tmp directory.Richard W.M. Jones2012-09-262-7/+1
| | | | | | | | | There's not really any point just documenting that people should label the tmp directory, when we can just label it. So change the ./run script so it calls chcon. However it's not a failure if chcon doesn't work. If SELinux is not installed or is disabled, then labelling will fail.
* recipes: Add a section about diagnosing hanging guests.Richard W.M. Jones2012-09-261-0/+29
|
* test-tool: Add prominent warning about including complete output.Richard W.M. Jones2012-09-261-0/+11
| | | | | | | Everyone ignores the documentation. Everyone ignores me even when I specifically tell them to include the complete output. Place a prominent notice at the beginning of the output.
* test-tool: guestfs_get_path might return NULL.Richard W.M. Jones2012-09-261-1/+1
| | | | | It would almost certainly indicate a bug if it happens, but don't rely on printf not segfaulting if it did happen.
* Revert "test-launch-race: Add SELinux label to $TMPDIR."Richard W.M. Jones2012-09-261-5/+0
| | | | | | Because RHBZ#860235 has been fixed in selinux-policy 3.11.1-25.fc18. This reverts commit 7fc838cca334ccf3d388c5598ff7fae88dbe4513.
* guestfs-testing(1): Start by running libguestfs-test-tool.Richard W.M. Jones2012-09-261-0/+14
|
* remove the useless "h" optionWanlong Gao2012-09-264-12/+0
| | | | | | "h" option is not enabled in virt-cat, remove it. Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
* FAQ: Miscellaneous cleanups.Richard W.M. Jones2012-09-251-12/+68
| | | | | | | - Use S<...> for non-breaking spaces. - Arrange the builds section better. - Add a section on enabling sVirt. - Other small fixes.
* docs: Link to guestfs-recipes(1) from intro in guestfs(3).Richard W.M. Jones2012-09-251-0/+2
|
* gobject: No need to remove old API files.Richard W.M. Jones2012-09-251-11/+0
| | | | | In commit 3d84ca76fec491015030daa53e9122b03032ddfd we changed the generator so it now automatically removes old API files.
* test-launch-race: Add SELinux label to $TMPDIR.Richard W.M. Jones2012-09-251-0/+5
| | | | | | This is a temporary workaround for https://bugzilla.redhat.com/show_bug.cgi?id=860235 which can be removed once this bug is fixed.
* libvirt >= 0.10.2 required for libvirt backend.Richard W.M. Jones2012-09-242-2/+2
|
* Version 1.19.44.1.19.44Richard W.M. Jones2012-09-2420-16821/+17580
|
* Fix tests/bigdirs/test-big-dirs.pl to use mke2fsWanlong Gao2012-09-242-20/+4
| | | | | | | | | | | Let tests/bigdirs/test-big-dirs.pl uses mke2fs to create small inode ratio files. Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com> RWMJ: - Fix invocation of mke2fs with optional arguments. - Run the test to check it works.
* NEW API:ext:mke2fsWanlong Gao2012-09-245-4/+464
| | | | | | | | | | | New api mke2fs for full configuration of filesystem. Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com> RWMJ: - Update description. - Run and fix the tests. - Remove bogus filename from po/POTFILES.
* tests/bigdirs: Add empty TESTS= rule.Richard W.M. Jones2012-09-241-3/+4
| | | | | | Without this empty rule, automake doesn't generate the rest of the testing infrastructure, so you can't enable the test yourself by doing 'make check TESTS=test-big-dirs.pl'.
* generator: xdr: Re-code procedure table.Richard W.M. Jones2012-09-242-8/+14
| | | | This is just code motion.
* generator: Tidy up comments in guestfs_protocol.x.Richard W.M. Jones2012-09-241-9/+19
|
* generator: Allow an optional emacs-mode at the top of generated files.Richard W.M. Jones2012-09-241-2/+7
|
* generator: The default input files are 'generator/ *.ml' [sic].Richard W.M. Jones2012-09-243-3/+3
| | | | | | | | Since generator source files were renamed, the comment at the top of each generated file was wrong. Unfortunately we cannot allow /* to appear within a comment, so the space is necessary.
* sysprep: handle at jobs in cron-spool operationOlaf Hering2012-09-221-0/+6
| | | | | | | cron-spool claims to remove at jobs, but it has no code to actually do that. Add patterns to remove files in known at spool locations. Signed-off-by: Olaf Hering <olaf@aepfle.de>