summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* build: Make netpbm and icoutils into proper optional dependencies.Richard W.M. Jones2012-03-073-5/+57
| | | | | | | | Netpbm and icoutils (wrestool) have always been dependencies. Since they are not always present, make these into optional dependencies (which they were, sort of, before). Also document these dependencies in the README file.
* Add support for Buildroot and Cirros distributions.Richard W.M. Jones2012-03-076-0/+92
|
* Whitespace change.Richard W.M. Jones2012-03-071-1/+1
|
* gobject: Update TODO with details of inspect_get_type fixMatthew Booth2012-03-061-0/+3
|
* Version 1.17.11.1.17.11Richard W.M. Jones2012-03-0521-169/+182
|
* Remove ConfigOnly flag from set-autosync.Richard W.M. Jones2012-03-051-1/+1
| | | | | | guestfs_set_autosync sets a flag which affects guestfs_close, and so this call can be made at any time before the handle is closed, not just in the config state.
* Test header file under C++.Richard W.M. Jones2012-03-044-0/+56
|
* Make "template" a reserved word.Marcin Gibula2012-03-042-4/+4
| | | | | | Function guestfs_mkdtemp uses c++ keyword "template" as a parameter name. In result, attempt to use guestfs.h header in c++ program results in compile error.
* Version 1.17.10.1.17.10Richard W.M. Jones2012-03-031-1/+1
|
* ruby: Use RbConfig instead of Config.Richard W.M. Jones2012-03-031-2/+2
| | | | I have checked, and this works with Ruby 1.8 as well.
* Add a 'fixed' style of appliance.Richard W.M. Jones2012-03-031-3/+33
| | | | | | | | | | This is just the 'kernel', 'initrd' and 'root' files, copied from one machine to another, along with a 'README.fixed' file which is also used for identification. This allows the appliance to be copied from one machine to another, making it easier for us to distribute a starter appliance for people who cannot get febootstrap or appliance-building working.
* Rebrand 'ordinary appliance' as 'old-style appliance'.Richard W.M. Jones2012-03-032-8/+8
| | | | This is just code motion.
* Test fails in arch linuxNikos Skalkotos2012-03-011-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | --20cf303ea4a84a7a7c04ba331375 Content-Type: text/plain; charset=ISO-8859-1 Hello Richard, I found what the problem was and the udev symlinks where not created. The init script in the appliance uses a full paths for udevadm (/sbin/udevadm) which in my case was wrong. In Arch Linux udevadm is hosted under /usr/bin, not /sbin. When I fixed this, libguestfs was able to communicate with the appliance VM. Since PATH variable is defined and exported in init, there is no need in using full paths for external programs. As far as I've seen this affects all the git branches in libguestfs's repository. Please find attached a patch for the master branch. Nikos Skalkotos, Athens, Greece On 24 February 2012 10:25, Richard W.M. Jones <rjones@redhat.com> wrote: > On Thu, Feb 23, 2012 at 08:50:12PM +0200, Nikos Skalkotos wrote: > [...] > > I don't know specifically why it fails with ArchLinux, but the problem > is caused by the /dev/virtio-ports/* symlinks not getting created by > udev. > > /dev/vport0p1 exists: > > > crw------- 1 root root 252, 1 Feb 23 18:17 vport0p1 > > but udev doesn't make the corresponding /dev/virtio-ports symlink: > > > /dev/virtio-ports/org.libguestfs.channel.0: No such file or directory > > The symlink is supposed to be created by this udev rule: > > /lib/udev/rules.d/50-udev-default.rules:KERNEL=="vport*", > ATTR{name}=="?*", SYMLINK+="virtio-ports/$attr{name}" > > So I'd start by looking to see if that rule exists in the udev rules > that Arch is using. Secondly if it does exist, is the corresponding > *.rules being copied into the appliance? (Check appliance/supermin.d/ > hostfiles) > > In an old Ubuntu that has udev that predates having this rule, we add > the following patch: > > > http://libguestfs.org/download/binaries/ubuntu1004-packages/0002-ubuntu-10.04-Use-dev-vport0p1.patch > > Rich. > > -- > Richard Jones, Virtualization Group, Red Hat > http://people.redhat.com/~rjones > virt-p2v converts physical machines to virtual machines. Boot with a > live CD or over the network (PXE) and turn machines into Xen guests. > http://et.redhat.com/~rjones/virt-p2v > Hello Richard,<br><br>I found what the problem was and the udev symlinks where not created. The init script in the appliance uses a full paths for udevadm (/sbin/udevadm) which in my case was wrong. In Arch Linux udevadm is hosted under /usr/bin, not /sbin. When I fixed this, libguestfs was able to communicate with the appliance VM.<br> <br>Since PATH variable is defined and exported in init, there is no need in using full paths for external programs. As far as I&#39;ve seen this affects all the git branches in libguestfs&#39;s repository. Please find attached a patch for the master branch.<br> <br>Nikos Skalkotos,<br>Athens, Greece<br><br><div class="gmail_quote">On 24 February 2012 10:25, Richard W.M. Jones <span dir="ltr">&lt;<a href="mailto:rjones@redhat.com">rjones@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> On Thu, Feb 23, 2012 at 08:50:12PM +0200, Nikos Skalkotos wrote:<br> [...]<br> <br> I don&#39;t know specifically why it fails with ArchLinux, but the problem<br> is caused by the /dev/virtio-ports/* symlinks not getting created by<br> udev.<br> <br> /dev/vport0p1 exists:<br> <div class="im"><br> &gt; crw------- 1 root root 252,   1 Feb 23 18:17 vport0p1<br> <br> </div>but udev doesn&#39;t make the corresponding /dev/virtio-ports symlink:<br> <div class="im"><br> &gt; /dev/virtio-ports/org.libguestfs.channel.0: No such file or directory<br> <br> </div>The symlink is supposed to be created by this udev rule:<br> <br> /lib/udev/rules.d/50-udev-default.rules:KERNEL==&quot;vport*&quot;, ATTR{name}==&quot;?*&quot;, SYMLINK+=&quot;virtio-ports/$attr{name}&quot;<br> <br> So I&#39;d start by looking to see if that rule exists in the udev rules<br> that Arch is using.  Secondly if it does exist, is the corresponding<br> *.rules being copied into the appliance?  (Check appliance/supermin.d/<br> hostfiles)<br> <br> In an old Ubuntu that has udev that predates having this rule, we add<br> the following patch:<br> <br> <a href="http://libguestfs.org/download/binaries/ubuntu1004-packages/0002-ubuntu-10.04-Use-dev-vport0p1.patch" target="_blank">http://libguestfs.org/download/binaries/ubuntu1004-packages/0002-ubuntu-10.04-Use-dev-vport0p1.patch</a><br> <br> Rich.<br> <span class="HOEnZb"><font color="#888888"><br> --<br> Richard Jones, Virtualization Group, Red Hat <a href="http://people.redhat.com/%7Erjones%0Avirt-p2v" target="_blank">http://people.redhat.com/~rjones<br> virt-p2v</a> converts physical machines to virtual machines.  Boot with a<br> live CD or over the network (PXE) and turn machines into Xen guests.<br> <a href="http://et.redhat.com/%7Erjones/virt-p2v" target="_blank">http://et.redhat.com/~rjones/virt-p2v</a><br> </font></span></blockquote></div><br>
* virt-sysprep: add the hostname and net_hwaddr support for rhelWanlong Gao2012-02-291-2/+2
| | | | | | | Add the support for rhel. Change the hostname and delete the HWADDR for rhel. Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
* Version 1.17.9.1.17.9Richard W.M. Jones2012-02-2820-13086/+14624
|
* resize: Fix --output-format flag (RHBZ#798196).Richard W.M. Jones2012-02-282-3/+10
| | | | Update the test to use the --format and --output-format flags.
* resize: Document steps to avoid UNMOUNTABLE_BOOT_VOLUME BSOD (RHBZ#797986).Richard W.M. Jones2012-02-271-0/+8
| | | | (Thanks Grant Williamson for finding and fixing this problem)
* New API: set-label, for setting a label on any filesystem.Richard W.M. Jones2012-02-2711-36/+137
| | | | | | Currently only ext2/3/4 and (newly) NTFS are supported. This change also deprecates set-e2label.
* New APIs: ntfsclone-in, ntfsclone-out.Richard W.M. Jones2012-02-2710-3/+328
|
* New API: ntfsfix for fixing problems on NTFS.Richard W.M. Jones2012-02-273-1/+46
| | | | Note this is not a "chkdsk" equivalent tool.
* Update TODO.Richard W.M. Jones2012-02-271-0/+2
|
* set-smp: limit the number of cpus below 255Wanlong Gao2012-02-251-1/+4
| | | | | | Limit the number of cpus below 255, since qemu can't support. Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
* Add a flag to make some functions called only at CONFIG state (RHBZ#796520).Wanlong Gao2012-02-234-34/+43
| | | | | | | Add a flag "ConfigOnly" to make sure that some non-daemon functions should be called only at CONFIG state (RHBZ#796520). Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
* Version 1.17.8.1.17.8Richard W.M. Jones2012-02-1518-152/+162
|
* sysprep: Try unmounting the filesystem a few times when busy.Richard W.M. Jones2012-02-151-1/+11
| | | | | tracker-miner-fs jumps into newly mounted filesystems. This prevents the filesystem from being unmounted, so retry a few times.
* appliance: Make appliance building thread-safe (RHBZ#790721).Richard W.M. Jones2012-02-151-1/+12
| | | | | | | | | | | | | | | Appliance building can be called from multiple processes, but this is only safe if each process holds a lock on the 'checksum' file. However threads within a process are not excluded by a file lock, and so this strategy completely failed for a multithreaded program calling guestfs_launch in parallel. Since it makes no sense for threads in a single program to race each other to try to create the appliance, add a lock around appliance building. This serialises building the appliance, but the rest of guestfs_launch (eg. starting up qemu) can run in parallel.
* tests: Test parallel launch from multiple threads.Richard W.M. Jones2012-02-153-1/+183
|
* test-user-cancel: Add \n to fprintf error messages.Richard W.M. Jones2012-02-151-6/+6
|
* Version 1.17.7.1.17.7Richard W.M. Jones2012-02-1318-26/+32
|
* tests: Add a regression test for RHBZ#789960.Richard W.M. Jones2012-02-132-0/+69
| | | | | Test all the ways that the 'mount' command can fail. Ensure that none of them result in failures or desynchronization.
* regressions: One test is not being run.Richard W.M. Jones2012-02-131-0/+4
| | | | | | | | | rhbz727178.sh exists, but historically was never added to the list of tests, so it doesn't run. Create a special variable for this test and ensure it is added to EXTRA_DIST. Test was originally added in commit d7356a2801130907997acd5c7502e8417566e782.
* daemon: Return error properly when user tries to mount appliance root ↵Richard W.M. Jones2012-02-131-1/+4
| | | | | | | | | | | | (RHBZ#789960). In the case where the caller attempts to mount the "hidden" appliance root device (eg. /dev/vdb if /dev/vda is the only normal block device added), we were calling reply_with_error but not actually returning immediately, resulting in protocol desynchronization. This commit fixes this obvious mistake.
* daemon: Don't xdr_free uninitialized args struct on error paths.Richard W.M. Jones2012-02-131-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For stubs of functions that had arguments, code did this: static void mount_stub (XDR *xdr_in) { int r; struct guestfs_mount_args args; if (optargs_bitmask != 0) { //... goto done; } // possibly other tests here memset (&args, 0, sizeof args); [...] done: xdr_free ((xdrproc_t) xdr_guestfs_mount_args, (char *) &args); return; } This caused xdr_free to be called on uninitialized 'args' struct, causing a segfault. The fix is to add another label, so the code looks like: static void mount_stub (XDR *xdr_in) { int r; struct guestfs_mount_args args; if (optargs_bitmask != 0) { //... goto done_no_free; } // possibly other tests here memset (&args, 0, sizeof args); [...] done: xdr_free ((xdrproc_t) xdr_guestfs_mount_args, (char *) &args); done_no_free: return; } This fixes commit 330fbea5b2d6bd7db84f7ea7afe87cf1bcd438e0 and commit 0344248af55802bbbd816b349ec1ba9305996f6e.
* Do not run test-virt-format.sh if appliance has not been builtHilko Bengen2012-02-121-0/+2
|
* Version 1.17.6.1.17.6Richard W.M. Jones2012-02-1020-17150/+17649
|
* virt-format: Add a test.Richard W.M. Jones2012-02-102-7/+40
|
* fish: edit: Preserve permissions, UID, GID, SELinux context when editing ↵Richard W.M. Jones2012-02-102-1/+92
| | | | files (RHBZ#788641).
* fish: In edit command, upload to a new file.Richard W.M. Jones2012-02-104-3/+110
| | | | | | | If the upload fails, this means we don't leave a partially written file. Also add a test for the edit command.
* fish: Refactor error handling in the 'edit' command.Richard W.M. Jones2012-02-101-24/+17
| | | | This is just code motion.
* wipefs: Fix documentation.Richard W.M. Jones2012-02-101-3/+1
| | | | This fixes commit a2b3e0900ee14e5a49d526c24e22edefc3030f99.
* ocaml: Ensure bindings are recompiled whenever there is an API change.Richard W.M. Jones2012-02-101-7/+3
|
* wipefs: Include "optgroups.h".Richard W.M. Jones2012-02-101-0/+1
| | | | This fixes commit a2b3e0900ee14e5a49d526c24e22edefc3030f99.
* virt-format: erase the filesystem signatures before erase partitionsWanlong Gao2012-02-101-15/+4
| | | | | | | erase the filesystem signatures on each device, then erase the partitions, avoid to list all the partitions here. Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
* NEW API: add a new api wipefsWanlong Gao2012-02-104-3/+41
| | | | | | | Add the new api wipefs to erase the filesystem signatures on a device but now erase any data. Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
* docs: Note that JRuby should use the Java bindings.Richard W.M. Jones2012-02-091-0/+2
|
* New API: llz: This runs ls -laZ and is useful for showing SELinux contexts.Richard W.M. Jones2012-02-093-1/+36
|
* edit: Preserve file permissions, UID, GID, SELinux context on edited files. ↵Richard W.M. Jones2012-02-093-0/+93
| | | | (RHBZ#788641)
* java: Make use of JAR_INSTALL_DIR, JNI_INSTALL_DIRHilko Bengen2012-02-082-5/+9
|
* Version 1.17.5.1.17.5Richard W.M. Jones2012-02-0818-23/+29
|
* findfs: Remove /run/blkid/blkid.tab.Richard W.M. Jones2012-02-081-0/+1
| | | | | See this util-linux commit: https://github.com/karelzak/util-linux/commit/b82590ad46acf9fe8d332b53875e24c3c31e2482