[Buildroot] Multi-branch support in the autobuilders
Thomas Petazzoni
thomas.petazzoni at free-electrons.com
Thu Nov 9 15:17:32 UTC 2017
Hello,
Signs of this have shown up since a few days on
autobuild.buildroot.org, and then this morning in the daily e-mail, but
since the implementation seems to now be complete, here is an
announcement.
The autobuilder infrastructure is now capable of testing multiple
Buildroot branches, so that we can test master, a maintenance branch,
the next branch, and more.
A very simple CSV file hosted at
http://autobuild.buildroot.net/branches defines the branches to be
tested, as well as some "weight". The current file contains:
master,10
next,4
2017.08.x,1
This means that out of 15 builds, statistically, we should have 10
builds done on master, 4 builds done on next, and one build done on
2017.08.x.
This file is downloaded by the autobuilder instances (in the
autobuild-run script) every time they start a build, to decide which
branch should be used for the next build.
In terms of visualization/reporting:
- http://autobuild.buildroot.org/ shows all the branches
- http://autobuild.buildroot.org/?branch=<branch> allows to filter the
results for just one branch
- http://autobuild.buildroot.org/stats.php shows the result of just
one branch (master by default), and one can select a different
branch. The graph of the build results over time is also updated on
a per branch basis.
- The e-mail sent every day to the mailing list has been updated to
report results from all branches. A first table shows in a very
synthetic way the result for all branches. And then, with one
section per branch, the failures are detailed. Note that if a branch
has seen no failure the past day, then the section for this branch
is entirely omitted, since there is no failure to report.
- The e-mail sent every day to the individual developers based on the
DEVELOPERS file information has also been updated, and has pretty
much the same logic: one section per branch, with the failures, and
the section for a given branch is omitted if there are no failures
to report.
Note that we are currently not testing the 2017.02.x LTS branch,
because the autobuilder infrastructure now relies on having the
toolchain configurations inside the Buildroot source code, as well as
the utils/genrandconfig script. However, it is definitely possible to
backport this script to the LTS branch, as well as a selection of
toolchain configurations, in which case we could add the 2017.02.x LTS
branch to the overall testing effort.
So:
- People running autobuilder instances today, please update your
autobuild-run script.
Peter: please don't update your autobuild-run script on gcc112 until
you backport to 2017.08.x all the ppc64le-as-host fixes that have
been put on master, or we will be flooded by build failures.
- People who are not yet running an autobuilder instance and have some
spare CPU cycles, please run an autobuilder instance! Do not
hesitate to get in touch with me if you need details on the
requirements or setup.
Thanks!
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
More information about the buildroot
mailing list