I run a build bot to fuzz-test Gentoo Linux software packages for build + install issues*.

Currently 8 chroot images are running in parallel at a 64bit hardened Gentoo Linux host (i7-3930, 12 cores, 64 GB RAM, 2x 3 TB HDD). Each image is set up from a recent stage3 with a randomized combination of (~)amd64 + profile + USE flag set.

Within every image all packages are tried to be emerged in a arbitrary order. The repository at the host is synced every 3 hours and shared to all images. Added or modified packages are put on top of each work queue. Once a day @system is updated. No parallel make jobs and no parallel emerge jobs are made (1 make job at N images rules over <=N make jobs at 1 image). No manual unmerge or any other action is usually made.

About 550 packages per image per day are emerged, < 2% do fail. The coverage of the repository of eg. 8 images is about 85% after 7 days. An image is replaced by a fresh new one usually after 10-18 days (based on this model). The old image is kept around for few weeks.

The Portage File List is fed too. Github hosts the source code.

*just to have fun and to redeem to a Linux distribution I do use and trust since 2003. The Gentoo project has its own tinderbox cluster with a slightly different goal.

The tinderbox runs in each chroot: "qsearch --all | sort --random-sort | xargs -n 1 emerge --update" and just parses the output.

back to my home page