On Tue, Mar 27, 2012 at 9:26 PM, Michael Hope <michael.hope@linaro.org> wrote:
Hi there.  The GCC build time is approaching 24 hours and our five
Panda boards can't keep up.  Sounds like a good time to LAVAise the
toolchain build process a bit more...

Mike Hudson and I talked about doing a hybrid LAVA/cbuild as a first
step where LAVA manages the boards and cbuild does the build.  The
idea is:

 * There's a image with the standard toolchain kernel, rootfs, build
environment, and build scripts
 * The LAVA scheduler manages access to the boards
 * The LAVA dispatcher spins up the board and then invokes the cbuild
scripts to build and test GCC

This gives me a fixed environment and re-uses the existing build
scripts.  In the future these can be replaced with different LAVA
components.  There's a few details:

 * cbuild self updates on start so the image can stay fixed
 * Full results are pushed by cbuild to 'control'
 * The dispatcher records the top level log and an overall pass/fail
 * No other bundles are generated

Most of this fits in with the existing LAVA features.  There's a few
additions like a 'run command' JSON action, passing the board name to
the instance, and passing the job name as an argument.  These seem OK.

I'd like some of the boards to be fitted with fast USB flash drives
for temporary storage.  SD cards are slow and unreliable especially
when GCC is involved.

It just so happens that some of the panda boards already have usb drives attached, and have the tag usb-flash-drive so that jobs can be scheduled in such a way that you can basically say "just give me some panda with a usb flash drive".  Right now, it's just a few, but the plan is to add the usb sticks to all boards soon.  Dave, do we have them now and we're just planning to put this in as part of the move?

Thanks,
Paul Larson