Re: [Pharo-project] Continuous Integration Server for Pharo?
I am currently working with Diego Kogan on the Continuous Integration Server for pharo.
While implementing this in Smalltalk is interesting - have you looked at just using Hudson out of the box? Its a pretty trivial install and would get something running quite quickly to bootstrap features that might be interesting later? I often worry that we don't study/use the competition first to understand all of the good features. For example Hudson/Cruise will monitor for hung builds for you - they also have excellent web dashboards that give you great stats on whats happening. Sure to do it properly you would need a Monticello plugin to detect changes (and that might be a good project) - however to get going its pretty easy to have a timed build that runs every hour. The detail is then to just focus on getting something that will run from the command line - load some script from a base image and then pull in the relavent metacello? lineup - and report all transcript errors to an external file for Hudson to pick up? The second artifact could then be to take the produced image and then run unit tests from it - and again report the results to a file for output. Finally Hudson does a great job of fanning out to multiple machines to run Web Browser tests (which typically can take a bit longer) to get results from those as well. It seems like its potentially easy to focus on the build tool and not the script that it needs to run to test all of the relevant details? Tim
On Nov 30, 2009, at 5:02 AM, Tim Mackinnon wrote:
I am currently working with Diego Kogan on the Continuous Integration Server for pharo.
While implementing this in Smalltalk is interesting - have you looked at just using Hudson out of the box?
Its a pretty trivial install and would get something running quite quickly to bootstrap features that might be interesting later? I often worry that we don't study/use the competition first to understand all of the good features. For example Hudson/Cruise will monitor for hung builds for you - they also have excellent web dashboards that give you great stats on whats happening. Sure to do it properly you would need a Monticello plugin to detect changes (and that might be a good project) - however to get going its pretty easy to have a timed build that runs every hour.
do you know if hudson has a public format for results. Because we could use that?
The detail is then to just focus on getting something that will run from the command line - load some script from a base image and then pull in the relavent metacello? lineup - and report all transcript errors to an external file for Hudson to pick up? The second artifact could then be to take the produced image and then run unit tests from it - and again report the results to a file for output.
Finally Hudson does a great job of fanning out to multiple machines to run Web Browser tests (which typically can take a bit longer) to get results from those as well.
It seems like its potentially easy to focus on the build tool and not the script that it needs to run to test all of the relevant details?
Tim _______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
participants (2)
-
Stéphane Ducasse -
Tim Mackinnon