See <http://hudson.opengeo.org/hudson/job/geoserver-master/5353/>
------------------------------------------
[...truncated 64655 lines...]
----------------------------------
Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 6.282 sec
Running org.geoserver.wms.web.data.WMSAdminPageTest
09 Aug 04:23:07 ERROR [geoserver.global] -
----------------------------------
- GEOSERVER_DATA_DIR: <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/./target/mock8821096103942050820data>
----------------------------------
09 Aug 04:23:08 ERROR [geoserver.global] -
----------------------------------
- GEOSERVER_DATA_DIR: <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/./target/mock1656577766568015614data>
----------------------------------
09 Aug 04:23:09 ERROR [geoserver.global] -
----------------------------------
- GEOSERVER_DATA_DIR: <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/./target/mock6207409511150722332data>
----------------------------------
09 Aug 04:23:10 ERROR [geoserver.global] -
----------------------------------
- GEOSERVER_DATA_DIR: <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/./target/mock7981952906704040285data>
----------------------------------
09 Aug 04:23:11 ERROR [geoserver.global] -
----------------------------------
- GEOSERVER_DATA_DIR: <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/./target/mock5720264174360937814data>
----------------------------------
Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 5.033 sec
Running org.geoserver.wms.web.data.publish.WMSLayerConfigTest
09 Aug 04:23:12 ERROR [geoserver.global] -
----------------------------------
- GEOSERVER_DATA_DIR: <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/./target/mock5811590188956990175data>
----------------------------------
09 Aug 04:23:13 ERROR [geoserver.global] -
----------------------------------
- GEOSERVER_DATA_DIR: <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/./target/mock2256892205606473492data>
----------------------------------
09 Aug 04:23:13 ERROR [geoserver.global] -
----------------------------------
- GEOSERVER_DATA_DIR: <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/./target/mock8337342058751644376data>
----------------------------------
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - debugging ----------------------------------------------
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form org.apache.wicket.markup.html.form.Form
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel org.geoserver.wms.web.publish.WMSLayerConfig [LayerInfoImpl[Ponds, resource:FeatureTypeInfoImpl[Ponds]]]
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:queryableEnabled org.apache.wicket.markup.html.form.CheckBox [true]
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:styles org.apache.wicket.markup.html.WebMarkupContainer
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:styles:defaultStyle org.apache.wicket.markup.html.form.DropDownChoice [StyleInfoImpl[Ponds]]
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:styles:defaultStyleLegendGraphic org.apache.wicket.markup.html.image.Image
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:styles:extraStyles org.apache.wicket.extensions.markup.html.form.palette.Palette []
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:styles:extraStyles:recorder org.apache.wicket.extensions.markup.html.form.palette.component.Recorder
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:styles:extraStyles:choices org.apache.wicket.extensions.markup.html.form.palette.component.Choices
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:styles:extraStyles:selection org.apache.wicket.extensions.markup.html.form.palette.component.Selection
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:styles:extraStyles:addButton org.apache.wicket.extensions.markup.html.form.palette.Palette$PaletteButton
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:styles:extraStyles:addButton:image org.apache.wicket.markup.html.image.Image
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:styles:extraStyles:removeButton org.apache.wicket.extensions.markup.html.form.palette.Palette$PaletteButton
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:styles:extraStyles:removeButton:image org.apache.wicket.markup.html.image.Image
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:styles:extraStyles:moveUpButton org.apache.wicket.extensions.markup.html.form.palette.Palette$PaletteButton
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:styles:extraStyles:moveUpButton:image org.apache.wicket.markup.html.image.Image
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:styles:extraStyles:moveDownButton org.apache.wicket.extensions.markup.html.form.palette.Palette$PaletteButton
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:styles:extraStyles:moveDownButton:image org.apache.wicket.markup.html.image.Image
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:styles:extraStyles:availableHeader org.apache.wicket.markup.html.basic.Label [Available Styles]
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:styles:extraStyles:selectedHeader org.apache.wicket.markup.html.basic.Label [Selected Styles]
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:styles:renderingBuffer org.apache.wicket.markup.html.form.TextField
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:wmsPath org.apache.wicket.markup.html.form.TextField [/]
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:authoritiesAndIds org.geoserver.wms.web.publish.LayerAuthoritiesAndIdentifiersPanel
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:authoritiesAndIds:authorityurls org.geoserver.wms.web.publish.AuthorityURLListEditor []
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:authoritiesAndIds:authorityurls:container org.apache.wicket.markup.html.WebMarkupContainer
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:authoritiesAndIds:authorityurls:container:table org.apache.wicket.markup.html.WebMarkupContainer
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:authoritiesAndIds:authorityurls:container:table:authorities org.apache.wicket.markup.html.list.ListView []
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:authoritiesAndIds:authorityurls:container:noURLs org.apache.wicket.markup.html.basic.Label [No authority URLs so far]
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:authoritiesAndIds:authorityurls:addURL org.apache.wicket.ajax.markup.html.form.AjaxButton
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:authoritiesAndIds:layerIdentifiers org.geoserver.wms.web.publish.LayerIdentifierListEditor []
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:authoritiesAndIds:layerIdentifiers:container org.apache.wicket.markup.html.WebMarkupContainer
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:authoritiesAndIds:layerIdentifiers:container:table org.apache.wicket.markup.html.WebMarkupContainer
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:authoritiesAndIds:layerIdentifiers:container:table:identifiers org.apache.wicket.markup.html.list.ListView []
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:authoritiesAndIds:layerIdentifiers:container:noIdentifiers org.apache.wicket.markup.html.basic.Label [No layer identifiers so far]
09 Aug 04:23:14 INFO [tester.BaseWicketTester] - path form:panel:authoritiesAndIds:layerIdentifiers:addIdentifier org.apache.wicket.ajax.markup.html.form.AjaxButton
Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.656 sec
Running org.geoserver.wms.web.data.StyleNewPageTest
09 Aug 04:23:14 ERROR [geoserver.global] -
----------------------------------
- GEOSERVER_DATA_DIR: <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/./target/mock8092296560524934780data>
----------------------------------
09 Aug 04:23:15 ERROR [geoserver.global] -
----------------------------------
- GEOSERVER_DATA_DIR: <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/./target/mock4485108094301273558data>
----------------------------------
09 Aug 04:23:16 ERROR [geoserver.global] -
----------------------------------
- GEOSERVER_DATA_DIR: <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/./target/mock8526628059471566661data>
----------------------------------
09 Aug 04:23:17 ERROR [geoserver.global] -
----------------------------------
- GEOSERVER_DATA_DIR: <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/./target/mock853290173351856380data>
----------------------------------
09 Aug 04:23:18 ERROR [geoserver.global] -
----------------------------------
- GEOSERVER_DATA_DIR: <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/./target/mock5933761962362749870data>
----------------------------------
Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 4.313 sec
Running org.geoserver.wms.web.data.StyleEditPageTest
09 Aug 04:23:19 ERROR [geoserver.global] -
----------------------------------
- GEOSERVER_DATA_DIR: <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/./target/mock4263941703596047369data>
----------------------------------
09 Aug 04:23:19 ERROR [geoserver.global] -
----------------------------------
- GEOSERVER_DATA_DIR: <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/./target/mock3916386895022522262data>
----------------------------------
09 Aug 04:23:21 ERROR [geoserver.global] -
----------------------------------
- GEOSERVER_DATA_DIR: <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/./target/mock5315358807632551767data>
----------------------------------
Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.819 sec
Running org.geoserver.wms.web.publish.AttributionLayerConfigTest
09 Aug 04:23:21 ERROR [geoserver.global] -
----------------------------------
- GEOSERVER_DATA_DIR: <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/./target/mock5273394648226764710data>
----------------------------------
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.609 sec
Results :
Tests run: 23, Failures: 0, Errors: 0, Skipped: 0
[INFO] [jar:jar {execution: default-jar}]
[INFO] Building jar: <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/target/web-wms-2.3-SNAPSHOT.jar>
[INFO] [jar:test-jar {execution: default}]
[INFO] Building jar: <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/target/web-wms-2.3-SNAPSHOT-tests.jar>
[INFO] Preparing source:jar
[WARNING] Removing: jar from forked lifecycle, to prevent recursive invocation.
[INFO] [git-commit-id:revision {execution: default}]
[INFO] [GitCommitIdMojo] .git directory could not be found, skipping execution
[INFO] [source:jar {execution: attach-sources}]
[INFO] Building jar: <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/target/web-wms-2.3-SNAPSHOT-sources.jar>
[INFO] Preparing source:test-jar
[WARNING] Removing: jar from forked lifecycle, to prevent recursive invocation.
[WARNING] Removing: test-jar from forked lifecycle, to prevent recursive invocation.
[INFO] [git-commit-id:revision {execution: default}]
[INFO] [GitCommitIdMojo] .git directory could not be found, skipping execution
[INFO] [source:test-jar {execution: attach-sources}]
[INFO] Building jar: <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/target/web-wms-2.3-SNAPSHOT-test-sources.jar>
[INFO] [install:install {execution: default-install}]
[INFO] Installing <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/target/web-wms-2.3-SNAPSHOT.jar> to /usr/share/jetty/.m2/repository/org/geoserver/web/web-wms/2.3-SNAPSHOT/web-wms-2.3-SNAPSHOT.jar
[INFO] Installing <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/target/web-wms-2.3-SNAPSHOT-tests.jar> to /usr/share/jetty/.m2/repository/org/geoserver/web/web-wms/2.3-SNAPSHOT/web-wms-2.3-SNAPSHOT-tests.jar
[INFO] Installing <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/target/web-wms-2.3-SNAPSHOT-sources.jar> to /usr/share/jetty/.m2/repository/org/geoserver/web/web-wms/2.3-SNAPSHOT/web-wms-2.3-SNAPSHOT-sources.jar
[INFO] Installing <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/wms/target/web-wms-2.3-SNAPSHOT-test-sources.jar> to /usr/share/jetty/.m2/repository/org/geoserver/web/web-wms/2.3-SNAPSHOT/web-wms-2.3-SNAPSHOT-test-sources.jar
[INFO] ------------------------------------------------------------------------
[INFO] Building GWC UI Module
[INFO] task-segment: [clean, install]
[INFO] ------------------------------------------------------------------------
[INFO] [clean:clean {execution: default-clean}]
[INFO] Deleting directory <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/gwc/target>
[INFO] [cobertura:clean {execution: default}]
[INFO] [git-commit-id:revision {execution: default}]
[INFO] [GitCommitIdMojo] Running on '<http://hudson.opengeo.org/hudson/job/geoserver-master/ws/.git’> repository...
[INFO] [GitCommitIdMojo] Initializing properties...
[INFO] [GitCommitIdMojo] Using maven project properties...
[INFO] [GitCommitIdMojo] Loading data from git repository...
[INFO] [GitCommitIdMojo] ------------------git properties loaded------------------
[INFO] [GitCommitIdMojo] build.branch = bb3d1d1f37f9c4aa1c84bb12a8eac67e199e50b3
[INFO] [GitCommitIdMojo] build.commit.id = bb3d1d1f37f9c4aa1c84bb12a8eac67e199e50b3
[INFO] [GitCommitIdMojo] build.build.user.name = Unknown
[INFO] [GitCommitIdMojo] build.commit.message.short = -GEOS-5226: CoverageAccessSettings and JAI page and global change events handling fix
[INFO] [GitCommitIdMojo] build.commit.time = 08.08.2012 @ 14:33:27 UTC
[INFO] [GitCommitIdMojo] build.commit.id.abbrev = bb3d1d1
[INFO] [GitCommitIdMojo] build.commit.message.full = -GEOS-5226: CoverageAccessSettings and JAI page and global change events handling fix
[INFO] [GitCommitIdMojo] build.commit.user.email = daniele.romagnoli@anonymised.com
[INFO] [GitCommitIdMojo] build.commit.user.name = Daniele Romagnoli
[INFO] [GitCommitIdMojo] build.build.user.email = Unknown
[INFO] [GitCommitIdMojo] build.timestamp = 09-Aug-2012 04:00
[INFO] [GitCommitIdMojo] build.hudsonId = -1
[INFO] [GitCommitIdMojo] build.build.time = 09.08.2012 @ 04:23:22 UTC
[INFO] [GitCommitIdMojo] ---------------------------------------------------------
[INFO] [GitCommitIdMojo] Finished running.
[INFO] [resources:resources {execution: default-resources}]
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 9 resources
[INFO] Copying 21 resources
[INFO] [compiler:compile {execution: default-compile}]
[INFO] Compiling 31 source files to <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/gwc/target/classes>
[INFO] [resources:testResources {execution: default-testResources}]
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 0 resource
[INFO] skip non existing resourceDirectory <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/gwc/src/test/resources>
[INFO] [compiler:testCompile {execution: default-testCompile}]
[INFO] Compiling 7 source files to <http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/gwc/target/test-classes>
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Compilation failure
<http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/gwc/src/test/java/org/geoserver/gwc/web/layer/LayerEditCacheOptionsTabPanelInfoTest.java>:\[7,25\] package org.mockito does not exist
<http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/gwc/src/test/java/org/geoserver/gwc/web/layer/LayerEditCacheOptionsTabPanelInfoTest.java>:\[7,0\] static import only from classes and interfaces
<http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/gwc/src/test/java/org/geoserver/gwc/web/layer/LayerEditCacheOptionsTabPanelInfoTest.java>:\[8,25\] package org.mockito does not exist
<http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/gwc/src/test/java/org/geoserver/gwc/web/layer/LayerEditCacheOptionsTabPanelInfoTest.java>:\[8,0\] static import only from classes and interfaces
<http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/gwc/src/test/java/org/geoserver/gwc/web/layer/LayerEditCacheOptionsTabPanelInfoTest.java>:\[9,25\] package org.mockito does not exist
<http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/gwc/src/test/java/org/geoserver/gwc/web/layer/LayerEditCacheOptionsTabPanelInfoTest.java>:\[9,0\] static import only from classes and interfaces
<http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/gwc/src/test/java/org/geoserver/gwc/web/layer/LayerEditCacheOptionsTabPanelInfoTest.java>:\[42,14\] cannot find symbol
symbol : method mock(java.lang.Class<org.geoserver.gwc.GWC>)
location: class org.geoserver.gwc.web.layer.LayerEditCacheOptionsTabPanelInfoTest
<http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/gwc/src/test/java/org/geoserver/gwc/web/layer/LayerEditCacheOptionsTabPanelInfoTest.java>:\[46,8\] cannot find symbol
symbol : method when(org.geoserver.gwc.config.GWCConfig)
location: class org.geoserver.gwc.web.layer.LayerEditCacheOptionsTabPanelInfoTest
<http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/gwc/src/test/java/org/geoserver/gwc/web/layer/LayerEditCacheOptionsTabPanelInfoTest.java>:\[48,35\] cannot find symbol
symbol : method mock(java.lang.Class<org.geoserver.catalog.FeatureTypeInfo>)
location: class org.geoserver.gwc.web.layer.LayerEditCacheOptionsTabPanelInfoTest
<http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/gwc/src/test/java/org/geoserver/gwc/web/layer/LayerEditCacheOptionsTabPanelInfoTest.java>:\[49,8\] cannot find symbol
symbol : method when(java.lang.String)
location: class org.geoserver.gwc.web.layer.LayerEditCacheOptionsTabPanelInfoTest
<http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/gwc/src/test/java/org/geoserver/gwc/web/layer/LayerEditCacheOptionsTabPanelInfoTest.java>:\[51,16\] cannot find symbol
symbol : method mock(java.lang.Class<org.geoserver.catalog.LayerInfo>)
location: class org.geoserver.gwc.web.layer.LayerEditCacheOptionsTabPanelInfoTest
<http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/gwc/src/test/java/org/geoserver/gwc/web/layer/LayerEditCacheOptionsTabPanelInfoTest.java>:\[52,8\] cannot find symbol
symbol : method when(org.geoserver.catalog.ResourceInfo)
location: class org.geoserver.gwc.web.layer.LayerEditCacheOptionsTabPanelInfoTest
<http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/gwc/src/test/java/org/geoserver/gwc/web/layer/LayerEditCacheOptionsTabPanelInfoTest.java>:\[54,8\] cannot find symbol
symbol : method when(org.geoserver.catalog.MetadataMap)
location: class org.geoserver.gwc.web.layer.LayerEditCacheOptionsTabPanelInfoTest
<http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/gwc/src/test/java/org/geoserver/gwc/web/layer/LayerEditCacheOptionsTabPanelInfoTest.java>:\[83,39\] cannot find symbol
symbol : method mock(java.lang.Class<org.geoserver.gwc.layer.GeoServerTileLayer>)
location: class org.geoserver.gwc.web.layer.LayerEditCacheOptionsTabPanelInfoTest
<http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/gwc/src/test/java/org/geoserver/gwc/web/layer/LayerEditCacheOptionsTabPanelInfoTest.java>:\[86,8\] cannot find symbol
symbol : method when(org.geoserver.gwc.layer.GeoServerTileLayerInfo)
location: class org.geoserver.gwc.web.layer.LayerEditCacheOptionsTabPanelInfoTest
<http://hudson.opengeo.org/hudson/job/geoserver-master/ws/src/web/gwc/src/test/java/org/geoserver/gwc/web/layer/LayerEditCacheOptionsTabPanelInfoTest.java>:\[87,30\] cannot find symbol
symbol : method same(org.geoserver.catalog.LayerInfo)
location: class org.geoserver.gwc.web.layer.LayerEditCacheOptionsTabPanelInfoTest
[INFO] ------------------------------------------------------------------------
[INFO] For more information, run Maven with the -e switch
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 22 minutes 57 seconds
[INFO] Finished at: Thu Aug 09 04:23:26 UTC 2012
[INFO] Final Memory: 60M/268M
[INFO] ------------------------------------------------------------------------
--
This message is automatically generated by Hudson.
For more information on Hudson, see: http://hudson-ci.org/