New tinderbox.

Chris Ball cjb at laptop.org
Thu Jan 31 14:16:35 PST 2008


Hi,

I've been working on a new tinderbox for Xorg using jhAutoBuild.  Here's
where it lives for the moment:

   http://monad.printf.net/

The current setup is that a new build kicks off on three machines every
two hours.  ppc64 and sparc64 machines build only the xserver/libs --
this is expected to pass, and these builds should stay green.  An i686
machine builds the full stack, including all drivers.  20 of those
modules currently fail to build:  18 video drivers plus xinit and mkcfm.

Some features:

   * An advantage of using jhautobuild is that it's distributed, in
     the sense that anyone is able to add another machine to the pool
     without requiring any input from me, accounts on my machine, or
     even my permission.  The jhbuild clients are able to upload their
     results to the web interface directly.

   * jhautobuild is able to track regressions (build failures that
     didn't occur in the previous build).  These failures could be
     linked to announcement e-mails and an RSS feed.  We can also
     annotate failures with the reason for failure and a fix; if
     anyone wants to start annotating the current failing modules,
     that would help with fixing them.

   * I'd like to add a layer of _functional_ testing alongside the
     compile testing.  Jhbuild allows flexible tests to be defined:
     a test could involve spawning the newly-compiled X server and
     checking that we get a detected device and that X comes up and
     a client launches.  We would need a pool of machines that have
     appropriate devices for the drivers under test, but that isn't
     hard since the machines won't all have to be in the same place.

Some questions:

   * Is this worthwhile, and should I keep working on it?  I imagine
     I'll need a hand keeping it maintained.

   * Is the split of having some machines build an expected-working
     server and others build expected-broken drivers useful?  Should
     I consider instead removing anything that's long-term broken
     from the build?

   * Are there Xorg components that I'm missing and should add?

I'd be interested to hear any feedback.  Thanks!

(Thanks especially to the jhautobuild team and the Xorg developers
responsible for maintaining the jhbuild moduleset; both groups did
more work than I had to in order to get this set up.)

- Chris.
-- 
Chris Ball   <cjb at laptop.org>



More information about the xorg mailing list