# 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 at aepfle.de> --- perhaps the if (!appliance) check should be somewhere else? src/launch-libvirt.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/launch-libvirt.c b/src/launch-libvirt.c index d678266..5914642 100644 --- a/src/launch-libvirt.c +++ b/src/launch-libvirt.c @@ -936,6 +936,10 @@ construct_libvirt_xml_appliance (guestfs_h *g, xmlTextWriterPtr xo, char drive_name[64] = "sd"; char scsi_target[64]; + /* appliance is optional */ + if (appliance == NULL) + return 0; + guestfs___drive_name (drv_index, &drive_name[2]); snprintf (scsi_target, sizeof scsi_target, "%zu", drv_index); -- 1.7.12.1
Richard W.M. Jones
2012-Oct-08 18:40 UTC
[Libguestfs] [PATCH][RFC] launch: appliance is optional
On Mon, Oct 08, 2012 at 08:10:36PM +0200, Olaf Hering wrote:> # 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 at aepfle.de> > --- > > perhaps the if (!appliance) check should be somewhere else? > > src/launch-libvirt.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/src/launch-libvirt.c b/src/launch-libvirt.c > index d678266..5914642 100644 > --- a/src/launch-libvirt.c > +++ b/src/launch-libvirt.c > @@ -936,6 +936,10 @@ construct_libvirt_xml_appliance (guestfs_h *g, xmlTextWriterPtr xo, > char drive_name[64] = "sd"; > char scsi_target[64]; > > + /* appliance is optional */ > + if (appliance == NULL) > + return 0; > + > guestfs___drive_name (drv_index, &drive_name[2]); > snprintf (scsi_target, sizeof scsi_target, "%zu", drv_index); > > -- > 1.7.12.1I'd forgotten that anyone was using the old-style appliance. The patch is fine and I'll apply it, possibly modified. But out of interest, how are you creating this appliance? I thought we'd ripped out support for old-style appliances from the rest of the toolchain ... Rich. -- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones virt-df lists disk usage of guests without needing to install any software inside the virtual machine. Supports Linux and Windows. http://et.redhat.com/~rjones/virt-df/
Possibly Parallel Threads
- [PATCH 0/2] Don't use snapshot=on
- [PATCH libguestfs 0/4] Add a libvirt backend to libguestfs.
- [PATCH v3 0/3] Add support for disk labels and hotplugging.
- [PATCH] lib: Add direct support for the NBD (Network Block Device) protocol.
- [PATCH v4 0/5] Finish hotplugging support.