On Tue, Sep 07, 2010, Paul Larson wrote:
> This looks great!  Just out of curiosity, did you look at anything else such
> as buildbot maybe?  I'm curious what reasons you had for choosing hudson
> over other alternatives.

 I did!  Thanks for asking!  :-)

 In fact, before I started looking for some daily build infrastructure,
 I had heard two strong recommendations of hudson, but I still went the
 buildbot route because as nice as it sounded, Hudson is Java and I
 thought it would be pain to extend and integrate.

 So I went with Buildbot, and sure enough it's Python.  After some 4
 hours, I had it decently setup to pull from a git repo and build one
 u-boot branch for one flavour.  I had to tweak a couple of minor things
 to do it, nothing major, and I mostly time learning the slightly
 special semantics / workflow of buildbot.  I also realized that I'd
 have to extend it to do some of things I needed, like publication of
 the results.

 Then I read another strong recommendation for hudson in a thread on a
 Canonical mailing-list; the case study was rich and complex, so a
 significant amount of time had been put into it.  I decided to try
 Hudson out, and I was immediately very successful at doing the same
 things as with buildbot and more.  Once you've played with Hudson,
 Buildbot feels very basic.  Hudson has many plugins and extension
 points, while Buildbot is more like a good structure for a custom
 infrastructure.  Out of the box, Hudson comes with many plugins and a
 feature-rich web UI which gets you to the meat of your own problems
 faster, but the underlying structure is as rich.

 Now that I've set it up, I certainly know it was the best choice, but I
 can also see how it's going to be hard to extend this setup for other
 tasks.  For instance, if I wanted to have a different web UI to serve
 the results, or if I wanted to setup git watches on multiple trees to
 trigger a build.  It's all doable, but it ends up being as hard as with
 buildbot if you go significantly away of what it's designed to do.


 I suspect the large Buildbot instances out there are all pretty much
 forks of the upstream Buildbot which are unlikely to move to a newer
 buildbot; they used buildbot as a good, simple, transparent
 mini-structure for integration builds and extended it, while Hudson
 encourages the plugin mechanism and continuous upgrades of your Hudson
 deployment just a bit more, so that it built a larger base of features
 out of the box.

 I have complete notes of the step I took and I even have my buildbot
 instance on my laptop (stopped); I'm happy to share these with you if
 you'd like to read more or would like to reproduce.

-- 
Loïc Minier

_______________________________________________
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev

Reply via email to