Release 0.142 – BuildBot is Botting Builds

For my first release I set out to set up a BuildBot instance at CDOT. My original plan was to have a try server running so people could check their code in and test it on all needed platforms locally. After a little while I decided that I will aim for this at a later date because it is not needed for my project and is apparently very complicated to set up. My journey started with checking out the BuildBot sources from the Mozilla CVS repository. I then built and installed BuildBot and it’s dependencies Twisted and ZOPE. Once I did this I downloaded the BuildBot documentation and got stuck in.

Reading the BuildBot documentation was a strange experience. I felt both at ease with the documentation and confused by its structure. I found that the best way to learn what BuildBot is and what it does is for someone to explain it to you. Thankfully, Armen helped me out with that (thanks :) ). This week he and I went through a couple BuildBot master configuration files which really made it clear what was going on with BuildBot. With that information I was able to set up a manually driven BuildBot that night.

Currently, my BuildBot requires a forced build to do anything. This is because I still need to configure a change source to tell BuildBot when to start a build on its own. After consulting with some of my peers I decided that this is probably what I have now is probably the best setup for doing my work on Twisted and BuildBot as it will make my testing a lot less waiting around for a change in the repository and a lot more debugging. Depending on how my testing is going I may decided to test only one of Mozilla’s modules so there are much shorter builds. Rather than using a smaller, unrelated project, this will ensure I am still seeing all the Mozilla specific things happen.

In order to ensure I have a build-able tree I have a checked out copy of the mozilla source code which I know to work and am serving this on the BuildBot master. My goal for the next two weeks is to work on getting Mac OS X and Windows BuildBot slaves into the mix and make a change to Twisted and/or BuildBot. The change that I plan on doing is to have some rudimentary form of timestamps on the build logs. This is not my final patch for twisted because I will be aiming to have it as a non-configurable change. This change will help me learn the code bases as well as to understand the methods I will be modifying. My release after next will be to have a configurable logging subsystem. Currently I have a couple plans for how to do this but I will leave them for my next blog post.

I am starting to think that I should maybe start a bug somewhere to ensure that my progress is visible and increase the chance of a speedy review.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>