FTBFS in trusty (QEMU version parsing)

Bug #1498618 reported by dann frazier
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
libguestfs (Ubuntu)
Fix Released
High
dann frazier
Trusty
Fix Released
Undecided
dann frazier

Bug Description

[Impact]
libguestfs fails to build from source in trusty. This is because libguestfs's configure checks for a version of qemu >=1, but the test doesn't properly deal with major versions >=2. When libguestfs was initially uploaded to the in-devel trusty release, qemu in trust was still a 1.x release, but qemu 2.x was uploaded before trusty's general release.

[Test Case]
Attempt to rebuild trusty's libguestfs in trusty. It currently fails with:

checking for /usr/bin/qemu-system-x86_64 version >= 1... no
configure: error: in `/home/dannf/libguestfs-1.24.5/debian/build-default':
configure: error: /usr/bin/qemu-system-x86_64 version must be >= 1.0.
See `config.log' for more details
dh_auto_configure: ../../configure --build=x86_64-linux-gnu --prefix=/usr --includedir=${prefix}/include --mandir=${prefix}/share/man --infodir=${prefix}/share/info --sysconfdir=/etc --localstatedir=/var --libdir=${prefix}/lib/x86_64-linux-gnu --libexecdir=${prefix}/lib/x86_64-linux-gnu --disable-maintainer-mode --disable-dependency-tracking --disable-appliance --with-readline --disable-haskell --disable-php --enable-gtk-doc --with-qemu=qemu-system-x86_64 --enable-install-daemon --with-java=/usr/lib/jvm/default-java RUBY=ruby1.9.1 RAKE=rake1.9.1 PYTHON=python2.7 LUA=lua5.2 JNI_INSTALL_DIR=${libdir}/jni returned exit code 1
make[1]: *** [override_dh_auto_configure] Error 2
make[1]: Leaving directory `/home/dannf/libguestfs-1.24.5'
make: *** [build-arch] Error 2
dpkg-buildpackage: error: debian/rules build-arch gave error exit status 2

[Regression Risk]
The upstream fix simply allows the version test to match greater versions of qemu. This doesn't impact the build in any way, just allows it to continue.

Revision history for this message
Richard Jones (rjones-redhat) wrote :

This was fixed a (really) long time ago: https://github.com/libguestfs/libguestfs/commit/101d728e80cce73b882aac7af457013491d03311

This would also be a good time for Ubuntu to update libguestfs to a version that doesn't have known security issues (but is on the same stable branch). See my comment here: https://bugzilla.redhat.com/show_bug.cgi?id=1194472#c2

Revision history for this message
dann frazier (dannf) wrote : Re: [Bug 1498618] Re: FTBFS in trusty

On Tue, Sep 22, 2015 at 12:52 PM, Richard Jones <email address hidden> wrote:
> This was fixed a (really) long time ago:
> https://github.com/libguestfs/libguestfs/commit/101d728e80cce73b882aac7af457013491d03311

Thanks for noticing/replying to this bug!

Yeah, I discovered and tested the above fix already - I just reported
this bug because having a tracking bug is a necessary part of the
stable release update (SRU) process:
  https://wiki.ubuntu.com/StableReleaseUpdates

> This would also be a good time for Ubuntu to update libguestfs to a
> version that doesn't have known security issues (but is on the same
> stable branch). See my comment here:
> https://bugzilla.redhat.com/show_bug.cgi?id=1194472#c2

In general, new upstream versions (even microreleases) are not
permitted in a stable release update. Rather, only targeted fixes for
specific bugs are permitted. There is an exception process to allow
for micro releases of certain packages, but it does not appear that
libguestfs currently has that approval:
  https://wiki.ubuntu.com/StableReleaseUpdates/MicroReleaseExceptions

Revision history for this message
Richard Jones (rjones-redhat) wrote : Re: FTBFS in trusty

For the MRU, the conditions are:

- upstream supports micro-version updates to stable releases

Yes. Upstream policy for stable commits is http://libguestfs.org/guestfs.3.html#libguestfs-version-numbers

- upstream has a sufficiently high level of regression testing for their stable releases

Yes. The 'make check-release' rule is run on every release (development and stable releases), and it includes a very large test suite run under a variety of conditions and on multiple architectures.

- regression tests are always run on the update before it is released (e.g. by being enabled in the package's build)

No - the Ubuntu package does not run the full test suite, although it could and probably should do.

dann frazier (dannf)
summary: - FTBFS in trusty
+ FTBFS in trusty (QEMU version parsing)
dann frazier (dannf)
Changed in libguestfs (Ubuntu Trusty):
status: New → In Progress
assignee: nobody → dann frazier (dannf)
Changed in libguestfs (Ubuntu):
status: Confirmed → Fix Released
Revision history for this message
Brian Murray (brian-murray) wrote :

@dannf - The microrelease process recently changed and is captured here.

https://wiki.ubuntu.com/StableReleaseUpdates#New_upstream_microreleases

Given that change should we consider updating to a new version of libguestfs?

Revision history for this message
dann frazier (dannf) wrote : Re: [Bug 1498618] Re: FTBFS in trusty (QEMU version parsing)

On Thu, Oct 8, 2015 at 2:41 PM, Brian Murray <email address hidden> wrote:
> @dannf - The microrelease process recently changed and is captured here.
>
> https://wiki.ubuntu.com/StableReleaseUpdates#New_upstream_microreleases
>
> Given that change should we consider updating to a new version of
> libguestfs?

I've got no objection to that - and upstream is in favor of that as
well. However, I did notice that the new policy requires autopkgtests
(section 2.3), and that is not currently true of libguestfs.

  -dann

> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1498618
>
> Title:
> FTBFS in trusty (QEMU version parsing)
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/ubuntu/+source/libguestfs/+bug/1498618/+subscriptions
>
> Launchpad-Notification-Type: bug
> Launchpad-Bug: distribution=ubuntu; sourcepackage=libguestfs; component=universe; status=Fix Released; importance=High; <email address hidden>;
> Launchpad-Bug: distribution=ubuntu; distroseries=trusty; sourcepackage=libguestfs; component=universe; status=In Progress; importance=Undecided; <email address hidden>;
> Launchpad-Bug-Information-Type: Public
> Launchpad-Bug-Private: no
> Launchpad-Bug-Security-Vulnerability: no
> Launchpad-Bug-Commenters: brian-murray dannf rjones-redhat
> Launchpad-Bug-Reporter: dann frazier (dannf)
> Launchpad-Bug-Modifier: Brian Murray (brian-murray)
> Launchpad-Message-Rationale: Subscriber
> Launchpad-Message-For: dannf

Revision history for this message
Chris J Arges (arges) wrote : Please test proposed package

Hello dann, or anyone else affected,

Accepted libguestfs into trusty-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/libguestfs/1:1.24.5-1ubuntu0.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in libguestfs (Ubuntu Trusty):
status: In Progress → Fix Committed
tags: added: verification-needed
Revision history for this message
dann frazier (dannf) wrote :

It builds on the architectures it had previously built for (+ some), so marking verified.

tags: added: verification-done
removed: verification-needed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package libguestfs - 1:1.24.5-1ubuntu0.1

---------------
libguestfs (1:1.24.5-1ubuntu0.1) trusty; urgency=medium

  * d/p/configure-Make-sure-grep-matches-qemu-2.x-version-st.patch:
      Fix FTBFS caused by QEMU 1.x->2.x update during trusty devel
      (LP: #1498618)
  * d/rules: Fix FTBFS by no longer force-overriding CFLAGS during
    dh_auto_test (LP: #1501075)
  * libguestfs-tools: Add missing dependency on curl (LP: #1368819)
  * Enable building on additional architectures:
    - d/{control,rules}: Enable builds on non-x86 architectures.
      This is sufficient for building on powerpc.
    - d/p/configure-Fix-tests-of-qemu-on-ARM.patch: Teach configure
      how to properly test qemu on ARM. This adds armhf support.
    - d/p/Fix-building-on-architectures-where-ocamlopt-is-not-.patch,
      d/p/More-fixes-for-situations-where-ocamlopt-is-not-avai.patch:
      Use ocamlc on architectures where ocamlopt is not available. This
      will unblock building on arm64 and ppc64el should systemtap-sdt-dev
      become installable there.

 -- dann frazier <email address hidden> Wed, 23 Sep 2015 16:48:41 -0600

Changed in libguestfs (Ubuntu Trusty):
status: Fix Committed → Fix Released
Revision history for this message
Chris J Arges (arges) wrote : Update Released

The verification of the Stable Release Update for libguestfs has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.