summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* appliance: Use command mini-library to run febootstrap-supermin-helper ↵Richard W.M. Jones2012-10-181-157/+70
| | | | (RHBZ#713678)
* lib: Change guestfs___remove_tmpdir function to use command mini-library.Richard W.M. Jones2012-10-185-32/+23
|
* lib: Add a new 'command' mini-library for running external commands.Richard W.M. Jones2012-10-184-0/+772
| | | | | | | | | | | | | This is a wrapper or mini-library for running external command, loosely based on libvirt's virCommand interface. Amongst the advantages are: - Can redirect errors into the error log (RHBZ#713678). - Can redirect output into a callback function. - Handles shell quoting properly. - Safely resets signal handlers, closes file descriptors, etc. - Single place where we can implement other improvements in future.
* valgrind: Add suppression for memory leak in libdl:_dl_init function.Richard W.M. Jones2012-10-181-0/+8
|
* NEW API: mktempWanlong Gao2012-10-177-24/+139
| | | | | | | | | | | | | | | | Used to create temporary directory or file with an optional suffix. Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com> RWMJ: - Split this out into a new file (daemon/mktemp.c). - I don't see a reason to deprecate the mkdtemp function which works fine. Instead remove complex dir-making code from the new function. - Test and fix the patch (missing close(fd)).
* configure: Add db5.1_dump, db5.1_load for Debian Wheezy.Richard W.M. Jones2012-10-171-2/+2
|
* TODO: remove the already implemented yum cache clean featureWanlong Gao2012-10-171-1/+0
| | | | | | | | The cleanup of package managers cache is already implemented by sprep_operation_package_manager_cache.ml, so remove this TODO item. Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
* todo: Implement Ruby blocking calls.Richard W.M. Jones2012-10-161-0/+14
|
* generator: Add 'blocking' flag to marking blocking (long-running) functions.Richard W.M. Jones2012-10-155-15/+100
| | | | | | | | | | | | | In languages like Python where we release a global lock around long-running libguestfs functions, it is also useful to *not* release this lock for small, non-blocking functions. Therefore mark all functions with a 'blocking' boolean flag. It defaults to true, and is true by definition for all daemon functions. For non-daemon functions, I have classified them manually. Only when the blocking flag is set do we generate the code to release and reacquire the lock around libguestfs calls.
* ocaml: Get rid of CAMLprim.Richard W.M. Jones2012-10-152-16/+16
| | | | It's wrong to use it, and in any case it doesn't do anything on Linux.
* Update release notes.Richard W.M. Jones2012-10-152-13/+198
|
* lib: Add a test for environment parsing functions.Richard W.M. Jones2012-10-153-2/+108
| | | | This updates commit 9466060201600db47016133d80af22eb38091a49.
* lib: Fix guestfs_create_flags example program in man page.Richard W.M. Jones2012-10-151-2/+4
| | | | This fixes commit 9466060201600db47016133d80af22eb38091a49.
* resize, sparsify: Suppress progress bar when output is not a tty.Richard W.M. Jones2012-10-151-21/+27
|
* sparsify: Fix dependencies so they include resize/progress.*Richard W.M. Jones2012-10-151-1/+1
| | | | This fixes commit 91b2238fc8e462c02f697f0c053043a55f43c13d.
* libvirt: auth: Some clarifications of the API from Dan Berrange.Richard W.M. Jones2012-10-151-19/+8
| | | | This updates commit d83d17e9dbfb24496a0841fc2aed436181ca0341.
* New APIs: guestfs_create_flags, guestfs_parse_environment,Richard W.M. Jones2012-10-1512-101/+327
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | guestfs_parse_environment_list. Add a new function for creating a handle: guestfs_h *guestfs_create_flags (unsigned flags [, ...]); This variant lets you supply flags and extra arguments, although extra arguments are not used at the moment. Of particular interest is the ability to separate the creation of the handle from the parsing of environment variables like LIBGUESTFS_DEBUG. guestfs_create does both together, which prevents us from propagating errors from parsing environment variables back to the caller (guestfs_create has always printed any errors on stderr and then just ignored them). If you are interested in these errors, you can now write: g = guestfs_create_flags (GUESTFS_CREATE_NO_ENVIRONMENT); if (!g) exit (EXIT_FAILURE); r = guestfs_parse_environment (g); if (!r) exit (EXIT_FAILURE); Also you can *omit* the call to guestfs_parse_environment, which creates a handle unaffected by the environment (which was not possible before). This commit also includes new (backwards compatible) changes to the OCaml, Perl, Python, Ruby and Java constructors that let you use the flags.
* ruby: Add RUBYLIB to run script.Richard W.M. Jones2012-10-151-0/+1
|
* Version 1.19.52.1.19.52Richard W.M. Jones2012-10-142-3/+6
|
* Update PO files from Transifex.Richard W.M. Jones2012-10-1418-29298/+27013
| | | | Also run 'make update-po'.
* Update API support.Richard W.M. Jones2012-10-1425-0/+14338
|
* valgrind: Fix FUSE memory leak suppression.Richard W.M. Jones2012-10-141-2/+10
|
* New APIs: Model libvirt authentication events through the API.Richard W.M. Jones2012-10-1313-5/+809
| | | | | | | | | | | | | | | | | | | | | This commit models libvirt authentication events through the API, adding one new event (GUESTFS_EVENT_LIBVIRT_AUTH) and several new APIs: guestfs_set_libvirt_supported_credentials guestfs_get_libvirt_requested_credentials guestfs_get_libvirt_requested_credential_prompt guestfs_get_libvirt_requested_credential_challenge guestfs_get_libvirt_requested_credential_defresult guestfs_set_libvirt_requested_credential See the documentation and example which shows how to use the new API. This commit also changes existing calls to virConnectOpen* within the library so that the new API is used. Also included is an example (but not a test, because it's hard to see how to automatically test the libvirt API).
* configure: Add --without-libvirt option.Richard W.M. Jones2012-10-132-7/+8
| | | | | | | | | | | Normally we check if libvirt is installed, and the default is still to do this. However having this option makes it simpler to check if a change to the code has broken the case where libvirt is not installed. In fact, this change revealed one such place, which is also fixed in this commit.
* docs: Make 'EVENTS' into its own =head1 section.Richard W.M. Jones2012-10-131-2/+6
| | | | | For some reason it was stuck under "CALLS WITH OPTIONAL ARGUMENTS", which made no sense.
* launch: libvirt: Make handle data conditional on HAVE_LIBVIRT.Richard W.M. Jones2012-10-132-11/+18
| | | | | | This means that we can use virConnectPtr and virDomainPtr instead of using void* types. In the case where libvirt support is disabled or not present, effectively nothing changes.
* lib: Rename src/libvirtdomain.c -> src/libvirt-domain.c.Richard W.M. Jones2012-10-133-2/+2
| | | | No change, just code motion.
* lib: Pointer arg to safe_memdup function should be const.Richard W.M. Jones2012-10-133-3/+3
|
* configure: Fix capitalization in configure script.Richard W.M. Jones2012-10-122-33/+33
| | | | | Just make the output of ./configure --help and the <config.h> file consistent.
* configure: Fix C++ compiler test so it doesn't print random junk.Richard W.M. Jones2012-10-121-1/+4
|
* Version 1.19.51.1.19.51Richard W.M. Jones2012-10-1118-210/+204
|
* daemon: Call udev-settle at the start of the daemon.Richard W.M. Jones2012-10-111-0/+11
|
* launch: libvirt: Always set <qemu:env> TMPDIR.Richard W.M. Jones2012-10-111-13/+16
| | | | | | | | If TMPDIR is not set, we must choose one, because otherwise libvirt will use a random TMPDIR: http://bugzilla.redhat.com/865464 The convenient guestfs___persistent_tmpdir function does everything needed in this case.
* fish: progress bar: Send interactive progress bar output to /dev/tty ↵Richard W.M. Jones2012-10-111-18/+36
| | | | (RHBZ#859875).
* sparsify: Re-use progress bar wrapper code from virt-resize.Richard W.M. Jones2012-10-1114-207/+22
| | | | | | | | | | | The code was identical -- just copied with s/resize/sparsify/. Instead of duplicating identical code, cause the Makefile.am to use the code from the ../resize/ directory. Unfortunately because there are two Utils modules (which are different), this means we had to rename those modules to Resize_utils and Sparsify_utils respectively. So this is a rather larger change than intended. However it's just code motion.
* fish: inspect: Canonicalize paths for printing (RHBZ#859876).Richard W.M. Jones2012-10-111-3/+11
|
* fish: inspect: Move variable decls to top of function.Richard W.M. Jones2012-10-111-3/+6
| | | | This is just code motion.
* Version 1.19.50.1.19.50Richard W.M. Jones2012-10-106-7820/+8141
|
* docs: Fix documentation about hotplugging.Richard W.M. Jones2012-10-101-3/+2
|
* launch: Add warning not to avoid calling launch twice on the same handle.Richard W.M. Jones2012-10-101-1/+6
| | | | | For more information on this topic, see: https://www.redhat.com/archives/libguestfs/2012-October/msg00045.html
* Revert "btrfs: Add a workaround for btrfs failures seen with kernel 3.7.0."Richard W.M. Jones2012-10-102-12/+0
| | | | | | | | | | Revert "btrfs: Add an extended workaround for btrfs failures seen with kernel 3.7.0." Reverted these workaround, since we may have found a fix for the btrfs bug itself (for details see RHBZ#863978). This reverts commit d9e5b514aa4ef6d659b267e8caef4ebec8a221b1 and commit a03f536f0dae3ca20e11b7c2ba41e4a7eb1f28c9.
* tests: Fix test-qemudie-* so they re-adds the disk on second launch.Richard W.M. Jones2012-10-103-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit ed7fda161e1f3d0beb02a368fcbcf5ed95dcdac1 changed the way that the drives are handled across appliance shutdowns. Previously during the following sequence of calls: create the handle add drive(s) launch kill subprocess launch the added drives are still in the handle at the second launch. After the above commit, the added drives are removed from the handle, which means the second launch happens with no drives (which could be an error). This was never actually defined either way, so in this case fix the test to re-add the drive before the second launch. Since hotplugging was added, it isn't really feasible to return to the original semantics, since users might remove drives, in which case we have lost information about those drives so we cannot restore them on the second launch. NOTE: PLEASE CALLERS DON'T DO THIS! Always use a new handle for each launch of the appliance.
* btrfs: Add an extended workaround for btrfs failures seen with kernel 3.7.0.Richard W.M. Jones2012-10-101-0/+5
| | | | | | | | | | See: https://bugzilla.redhat.com/show_bug.cgi?id=863978 and: http://thread.gmane.org/gmane.comp.file-systems.btrfs/20257 This extends the fix in commit d9e5b514aa4ef6d659b267e8caef4ebec8a221b1 because I missed the case where mkfs.btrfs is called directly.
* docs: Fully document all subdirectories of the source.Richard W.M. Jones2012-10-091-4/+17
|
* docs: Add overview to guestfs(3)/EXTENDING LIBGUESTFS.Richard W.M. Jones2012-10-091-3/+34
|
* appliance: Add 99-guestfs-serial.rules to EXTRA_DIST.1.19.49Richard W.M. Jones2012-10-091-0/+1
| | | | This fixes commit 7786d56db8c22413949f98ef6b15fe0ea367d195.
* 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.