I have now published the Buildbot configuration file that we use for our continuous integration tests in our Buildbot setup. Every push into main and development branches of MariaDB is built and tested on a range of platforms to catch and fix any problems early (and we also test MySQL releases before merging to easily see whether any new problems already existed in MySQL or were introduced by something specific to MariaDB).
The configuration is included in the Tools for MariaDB Launchpad project.
Now, the Buildbot configuration file is not something that most MariaDB users will need or want to care about, of course. But I think it is still very important to have it publicly available, not sitting on some private server of the company Monty Program AB.
The reason is that the whole idea with MariaDB is to make a community
branch of MySQL, developed by the community and for the community. We want
MariaDB the project to be bigger than Monty Program AB the company. And since
the Buildbot testing is so central to the whole MariaDB development process,
the Buildbot setup also needs to be available for the community. Want to
improve the setup, just see what it is doing, or even set up your own master
to show you can do a better job (and yes our Windows setup currently really
suck)? Just go ahead! Wondering how the Buildbot setup can be continued if
Monty Program AB disappears or turns fascist? Now there is an answer.
Hopefully the configuration can also be useful as an example for people doing fancy things with Buildbot. There is some cool stuff in there. Like creating a source tarball on a linux host, and uploading it to be built on a Windows host (this is how releases are done, so important to check that no files are missing from the source tarball). Another cool thing is the builders that boots op KVM virtual machines on demand to build and test binary packages (.deb, .rpm, and .tar.gz) on all of the 18 Linux platforms we currently release for.
BTW, you do not get the miscellaneous passwords in the published configuration file, sorry! 🙂
[The license for the configuration file (which is in fact a sizable Python script, as this is the way Buildbot is configured) is GPL.]