I wanted to draw attention to Rob Helmer’s recent blog post from last week. Basically, we are moving 1.8 nightlies from running on TinderboxClient, to running on Buildbot. There are a few reasons this is really important.
- reliability: by using a pool of shared identical slaves, we expect to be able to survive hardware failures of a generic slave much better then our current situation, where a hardware failure of a dedicated slave will close the tree.
- easier cleanup: bringing the different nightly and release systems into sync with each other greatly simplifies our future cleanup work. Until now, each change had to be reviewed for possible breakage in several different paths through different build processes, running on differently configured machines. Real mind-warp stuff. This change also makes it easier to spot obsolete build processes that can be trimmed.
- buildbot: this introduces buildbot into the nightly build process for the first time. Until now, we’ve had our new buildbot/bootstrap enhancements on release builds, but not yet on nightlies, so this is an important milestone for us.
- this gets us one step closer to being able to change from build-continuously to build-on-checkin
- misc annoying headaches: occasionally, we have nightly/clobber builds collide with hourly/incremental builds because of bad timing. Similarly, for machines that used to do double-duty of hourly/nightly builds *and* release builds, we had to remember to manually stop nightly builds before starting release builds, or risk crashing out with broken release builds. This change resolves all that, because buildbot handles scheduling better.
This is a big exciting change for us in the Build team, and has taken months of behind the scenes work to make happen. We’ve been running the two production systems in parallel since 14feb, and if all is still ok, we’ll shutdown the old Tinderbox builders on 25feb. If we’ve done our homework right, hopefully, no-one will notice anything different. However, if you do see anything different, or have any questions, please update bug#417147, and/or contact Rob, myself or anyone on build@m.o.
(Assuming all goes ok with this transition on the 1.8 branch, we’ll start doing the same on the 1.9 branch next.)