What happens when you push
As of November 1st, when you push a change to mozilla-central, the following builds and tests get triggered:
|
|
|
|
That’s 111 distinct build and test jobs that get spread out across our build and tests pools. A total of 40 machine hours per checkin in our main build, test and talos pools is used, plus an additional 25 machine hours on the mobile devices!!!
In addition, we also do certain types of jobs on a periodic basis:
- Nightly builds
- XULRunner builds
- Shark builds
- Code coverage runs
- L10n repacks for 72 locales and 7 platforms (Windows, Mac OSX, Linux, Windows Fennec, Mac OSX Fennec, Linux Fennec, Maemo); that’s 504 individual repacks!
In the course of collecting the data for this post, I’ve been constantly amazed at the amount of stuff that we’re doing, and the scale of the infrastructure! The list above is just for our mozilla-central branch, and I’ve most likely missed something. We do similar amounts of work for our other branches as well: Try, mozilla-1.9.2, mozilla-1.9.1, TraceMonkey, Electrolysis, and Places. Things have certainly changed a lot in the past year.


On the l10n buildbot infrastructure, we fire builds if you’re touching l10n files, aka, files beneath locales/en-US. For toolkit, that’s builds for all locales on Firefox, Thunderbird, Fennec, SeaMonkey. That’s 155 builds on a single builder, tweaked to the app and branches by build properties. For landings to browser, it’s only Firefox. I’m currently running different systems in parallel, the builds reporting to the dashboard do actual repacks, the builds reporting on stage only run compare-locales on the source.
Correction, on the nightlies, we’re not doing 72 locales on Fennec, but only 35, and none on os/x. Math is hard, not gonna dive into the details right here.
This is interesting, and impressive! A few things that I noticed:
What does everythingelse do?
There are no tests run on Linux 64-bit or Windows 7.
“everythingelse” is the creative name we give to the test suite that runs everything that isn’t the mochitest suite. We’re actually looking at splitting some of the tests into their own individual run, e.g. reftest or xpcshell.
You are correct, there is no testing done on Linux 64-bit or Windows 7.
[...] runs. Sure. But did you know we run about 40 hours worth? Chris AtLee put together a complete list here, listing out what jobs are run. Its much easier to read then anything I’ve tried in the past, [...]
[...] Here’s how it looks compared to the year so far: Detailed breakdown is : Here’s how the math works out: The types of build, unittest and performance jobs triggered by each individual push are best described here. [...]
[...] Here’s how it looks compared to the year so far: Detailed breakdown is : Here’s how the math works out: The types of build, unittest and performance jobs triggered by each individual push are best described here. [...]
[...] Here’s how it looks compared to the year so far: Detailed breakdown is : Here’s how the math works out: The types of build, unittest and performance jobs triggered by each individual push are best described here. [...]
[...] Here’s how the math works out (Descriptions of build, unittest and performance jobs triggered by each individual push are here: [...]