tinderbox


I run a build bot to identify build and installation issues of Gentoo Linux software packages*. I reused the term tinderbox from the former Gentoo developer flameeyes.

7 images are running in parallel at a 6-core Xeon with 128 GB RAM and 2x 1.8 TB HDD.

Each image is setup from a recent stage3 tarball as an arbitrary combination of ~amd64 + profile + USE flag set. Within each image all Gentoo packages are scheduled to be emerged in a randomized order, About 1/3 will be processed during lifetime of the image. Once a day @system and @worldare updated. No parallel emerge, no parallel make and no unmerge is made. The repository of the host is synced hourly via Git and rsynced soon by each image. Recent portage tree changes are mixed hourly into the backlog of each image.

With a mean of 600 emerged packages / image / day, 3% do fail (5% with FEATURES=test).

An image is replaced by a fresh new one usually after 10-30 days (see this model). The coverage of the Gentoo repository is about 85% with 7 images running for 11 days before being replaced (estimation based on this model). An replaced image is kept around for at a month.

The source code is located at GitHub.

*just to have fun, and to redeem to a Linux distribution I do use and trust since 2003. The Gentoo project runs their own tinderboxes and CI/CD solutions with different approaches.


tl;dr;
The tinderbox runs for each image: "qsearch --all | sort --random-sort | xargs -n 1 emerge --update" and just parses the output.


back to my home page