Bug 613593

Summary: Rebase libguestfs in RHEL 6.1
Product: Red Hat Enterprise Linux 6 Reporter: Richard W.M. Jones <rjones>
Component: libguestfsAssignee: Richard W.M. Jones <rjones>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: low    
Version: 6.1CC: abaron, clalance, dallan, hbrock, herrold, iheim, jeder, jzheng, mbooth, mshao, pbatkowski, rjones, rlerch, snagar, tao
Target Milestone: rcKeywords: FutureFeature, Rebase, Triaged
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: libguestfs-1.7.17-10.el6 Doc Type: Rebase: Bug Fixes and Enhancements
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-05-19 11:45:01 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 628849    
Bug Blocks: 600144, 612308, 615223, 627832, 627833, 627835, 633174, 634813, 635017, 639601, 639602, 641494, 669839, 669840, 670299, 689882    

Description Richard W.M. Jones 2010-07-12 11:24:19 UTC
Description of problem:

The version of libguestfs that we are shipping in RHEL 6.0 will be
1.2.7 + a handful of backported bug fixes and features to support
virt-v2v.

This bug is here to make the case that we should rebase libguestfs
in RHEL 6.1 to either:
 >= 1.2.10 (along the same 1.2 stable branch), or:
 >= 1.4.1 (along the new 1.4 stable branch)

Background reading:

Summary of libguestfs version numbers in all Fedora branches:
http://rwmj.wordpress.com/2010/07/12/libguestfs-versions/

Explanation of libguestfs version numbering:
http://libguestfs.org/guestfs.3.html#libguestfs_version_numbers

libguestfs 1.4.0 release notes:
https://www.redhat.com/archives/libguestfs/2010-July/msg00033.html

Firstly, a rebase to >= 1.2.10 isn't really a "rebase" at all.  We only
pull in bug fixes along the stable branches, so upgrading to this
version just pulls in bug fixes, some of which we are already carrying
as separate patches in the RHEL 6.0 SRPM.  This is the completely
safe option.

However a rebase to >= 1.4.1 should also be considered.  This is
the latest stable branch.  It has significant new features, but retains
source and binary (ABI) compatibility with existing programs.
Amongst the important new features for our users:

 - virt-resize contains important fixes for Windows guests
    which would be difficult to backport
 - virt-resize contains useful extra capabilities for Linux guests
 - the aug_clear API which we need in virt-v2v and currently
    have to backport is included by default
 - the FUSE module supports write mode
 - guestfish has many usability enhancements
 - a lot of more invasive bug fixes which were too much to
    backport into 1.2 upstream are included in 1.4, and moving
    to 1.4 directly would avoid us having to do these complex
    backports just for RHEL.

Fedora 13 users are the test bed for the 1.4 branch.

The downsides as I see them:

 - QA would have to be extended to cover the new features
 - obviously there is some risk of regression with any big rebase
 - virt-v2v is currently QA'd against 1.2

Comment 3 Richard W.M. Jones 2010-08-31 08:06:09 UTC
I am using Fedora 13 as a testbed for a possible RHEL 6.1 package.
This package is based on stable branch 1.4, with significant features
backported from the development branch.  We are using git to
manage the patches.

Latest Fedora package, search for 'fc13' here:
https://admin.fedoraproject.org/updates/search/libguestfs

Package spec file and patches:
http://pkgs.fedoraproject.org/gitweb/?p=libguestfs.git;a=tree;h=refs/heads/f13/master;hb=refs/heads/f13/master

The base version and backports are encoded in the version
number:

f13$ guestfish --version
guestfish 1.4.3+fastdf+luks+islv+inspection+ext2+serial+core

Amongst the significant enhancements over 1.2.7:

- big performance improvements
- use of virtio-serial instead of SLIRP
- all APIs required by virt-v2v are included or backported
- all bugfixes required by virt-v2v similarly
- virt-resize supports Windows guests
- FUSE module works in write mode
- other features are covered in the 1.4.0 release notes
  https://www.redhat.com/archives/libguestfs/2010-July/msg00033.html

Comment 17 Richard W.M. Jones 2010-11-18 18:10:55 UTC
There are some test packages here:
http://people.redhat.com/~rjones/rhel6.1-libguestfs-preview/

Announcement:
https://www.redhat.com/archives/libguestfs/2010-November/msg00059.html

Comment 18 Richard W.M. Jones 2010-11-19 08:58:30 UTC
https://brewweb.devel.redhat.com/taskinfo?taskID=2903356

Comment 19 Richard W.M. Jones 2010-11-26 09:37:12 UTC
Setting back to ASSIGNED.

There are several problems with the packages from
comment 17 (however, *please* still test those):

1. Should package libguestfs-winsupport

2. Should require febootstrap 2.11
   https://bugzilla.redhat.com/show_bug.cgi?id=628849#c5

3. Need to backport the C tools from upstream for
   RHEV-H and change the packaging slightly so that
   nothing we need for RHEV-H will require perl.

Comment 20 Richard W.M. Jones 2010-11-30 18:41:34 UTC
https://brewweb.devel.redhat.com/buildinfo?buildID=150467

(In reply to comment #19)
> 1. Should package libguestfs-winsupport

Turns out this is not required.  You can continue to use the
current libguestfs-winsupport[a] package with this newer
libguestfs.

[a] https://brewweb.devel.redhat.com/buildinfo?buildID=136679

> 2. Should require febootstrap 2.11
>    https://bugzilla.redhat.com/show_bug.cgi?id=628849#c5

Done:
https://brewweb.devel.redhat.com/buildinfo?buildID=150384

> 3. Need to backport the C tools from upstream for
>    RHEV-H and change the packaging slightly so that
>    nothing we need for RHEV-H will require perl.

Done.  The new subpackage is called libguestfs-tools-c.

If you install libguestfs-tools (Perl tools) it will pull
in libguestfs-tools-c as well.

If you install libguestfs-tools-c, you will just get the
C tools and there should be no Perl dependency at all.

Comment 21 Richard W.M. Jones 2010-12-20 22:10:44 UTC
Further updates, see changelog:

http://brewweb.devel.redhat.com/brew/taskinfo?taskID=2990591

Comment 28 errata-xmlrpc 2011-05-19 11:45:01 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHSA-2011-0586.html

Comment 29 errata-xmlrpc 2011-05-19 13:16:38 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHSA-2011-0586.html