Archive for the ‘hudson’ category

Hudson and Amazon EC2

June 8th, 2009

So my biggest gripe with Hudson is slave nodes. In land we need to run our tests on a wide variety of platforms – it’s a system/configuration management tool that runs on just about every flavour of *nix (and soon to be Windows) around: Linux (a bucket load of distros), *BSD, OSX, AIX, Solaris, HP-UX, amongst others. We need to ensure it builds, runs and configures things on these platforms and that new features and functions don’t break things. To do this there is a huge management overhead – especially as build/test is generally two or three people – mostly Luke and I.

In this process I’ve had many struggles with getting people to submit slaves and with managing my own slave node network for . It’s bloody annoying to have to fight RUBYLIB issues, Gem versions, installed versions of and and a dozen other issues with running tests on slaves before you can even identify and fix a failed test.

I finally threw in the towel and decided to look at some other engines – perhaps my initial look and selection of had been premature.  But another review and installation of a wide variety of tools suggested to me that was the right choice. So an impasse.

Then along came the Hudson Amazon EC2 plug-in.  It allows to run up Amazon instances when required as slaves.  This means with a few judicious choices of AMIs I can quickly run up a test farm that covers all my requirements – Linux, Solaris, even Windows when we merge in the new Windows code (0.25.0beta2 I hope).  It’s not quite working yet – for reasons that aren’t 100% clear to me yet. :)   But it’s on the right path and I hope it’s going to make life much easier.  More on how it all works … when it all works..

UPDATE:  It now works – mostly a PEBCAK issue – the plug-in requires that the Security Group is configured to allow a connection on port 22 from the master.  Next steps some proper implementation… :P