← Back to team overview

launchpad-reviewers team mailing list archive

[Merge] lp:~cjwatson/launchpad-buildd/check-sbuildrc into lp:launchpad-buildd

 

Colin Watson has proposed merging lp:~cjwatson/launchpad-buildd/check-sbuildrc into lp:launchpad-buildd.

Commit message:
Fail the builder immediately if $HOME/.sbuildrc is corrupt.

Requested reviews:
  Launchpad code reviewers (launchpad-reviewers)
Related bugs:
  Bug #1235287 in launchpad-buildd: "Insufficient handling of multi-guest PPA overlays getting out of sync"
  https://bugs.launchpad.net/launchpad-buildd/+bug/1235287

For more details, see:
https://code.launchpad.net/~cjwatson/launchpad-buildd/check-sbuildrc/+merge/189349

Fail the builder immediately if $HOME/.sbuildrc is corrupt due to bugs in multi-guest Xen PPA deployment.

QA: Hard to arrange, but we should obviously at least make sure that it doesn't break normal working builds.

This should only be landed after https://code.launchpad.net/~cjwatson/builddfitzer/no-auto-reset/+merge/189346 has been merged and webops have updated their local checkouts to it.
-- 
https://code.launchpad.net/~cjwatson/launchpad-buildd/check-sbuildrc/+merge/189349
Your team Launchpad code reviewers is requested to review the proposed merge of lp:~cjwatson/launchpad-buildd/check-sbuildrc into lp:launchpad-buildd.
=== modified file 'debian/changelog'
--- debian/changelog	2013-10-03 11:44:33 +0000
+++ debian/changelog	2013-10-04 15:20:49 +0000
@@ -1,3 +1,10 @@
+launchpad-buildd (118) UNRELEASED; urgency=low
+
+  * Fail the builder immediately if $HOME/.sbuildrc is corrupt
+    (LP: #1235287).
+
+ -- Colin Watson <cjwatson@xxxxxxxxxx>  Fri, 04 Oct 2013 16:07:00 +0100
+
 launchpad-buildd (117) hardy; urgency=low
 
   * Fix dep-wait detection when recipes fail to install build-dependencies

=== modified file 'sbuild-package'
--- sbuild-package	2013-08-10 16:35:05 +0000
+++ sbuild-package	2013-10-04 15:20:49 +0000
@@ -17,6 +17,12 @@
 
 export LANG=C LC_ALL=C 
 
+# On multi-guest PPA hosts, the per-guest overlay sometimes gets out of
+# sync, and we notice this by way of a corrupted .sbuildrc.  We aren't going
+# to be able to build anything in this situation, so immediately return
+# BUILDERFAIL.
+perl -c "$HOME/.sbuildrc" || exit 4
+
 SBUILD=/usr/bin/sbuild
 BUILDID=$1
 ARCHITECTURETAG=$2
@@ -91,6 +97,7 @@
 # Any other reason (which we'll treat as a build failure), exit 3
 exit 3
 
-# There is an exit code of "4" that means the builder itself
-# is having problems.  Currently, we don't use it at all.
+# There is an exit code of "4" that means the builder itself is having
+# problems.  Currently, we don't use it at all, except for the .sbuildrc
+# check above.
 # exit 4


Follow ups