[Geoserver-devel] Nightly builds running with skipTests

I just noticed that nightly builds of the stable branches are running with skipTests.

(1) Are these builds used to create the nightly downloads?

(2) If so, does this mean that we are allowing the world to download nightly release artifacts created by builds with failing unit tests? It looks like the nightly builds fail only on compile errors.

This is what they do:

geoserver-2.0.x-nightly:
mvn -DskipTests -P release,communityRelease clean install

geotools-2.6.x-nightly:
/opt/actual/apache-maven-2.1.0/bin/mvn -U deploy -P deploy.opengeo -Djava.awt.headless=true -Dtest.maxHeapSize=256M -Dall -DskipTests

Furthermore, I noticed while debugging a nightly-built jar that timestamps are mixed, indicating that GeoTools was built without "clean".

Please tell me that I misunderstand this. Is Hudson doing something clever that I do not comprehend?

I would very much prefer all nightly release artifacts to be built with "clean install" and without test skipping, on stable and trunk. This is the bare minimum quality standard my organisation requires for our GeoServer trunk build, in which any unit test failure prevents an artifact update:
https://cgsrv1.arrc.csiro.au/swrepo/GeoServerTrunk/latest/
http://geobuilder.arrc.csiro.au/geoserver/waterfall
http://geobuilder.arrc.csiro.au/geoserver/one_line_per_build

Kind regards,

--
Ben Caradoc-Davies <Ben.Caradoc-Davies@anonymised.com>
Software Engineer, CSIRO Earth Science and Resource Engineering
Australian Resources Research Centre
26 Dick Perry Ave, Kensington WA 6151, Australia

Yes this is done intentionally. And the reason being that if tests are not passing then the regular build should be down. And if nothing is getting down about the regular build then developers are sleeping on the job.

Nightly builds are by definition unstable and should be considered releases. That said in general i am not against enabling tests in the builds. However it does make the build longer and often nightly builds are generated on demand... so the waiting period will become longer. But probably acceptable.

2c.

-Justin

On 2/25/10 3:02 AM, Ben Caradoc-Davies wrote:

I just noticed that nightly builds of the stable branches are running
with skipTests.

(1) Are these builds used to create the nightly downloads?

(2) If so, does this mean that we are allowing the world to download
nightly release artifacts created by builds with failing unit tests? It
looks like the nightly builds fail only on compile errors.

This is what they do:

geoserver-2.0.x-nightly:
mvn -DskipTests -P release,communityRelease clean install

geotools-2.6.x-nightly:
/opt/actual/apache-maven-2.1.0/bin/mvn -U deploy -P deploy.opengeo
-Djava.awt.headless=true -Dtest.maxHeapSize=256M -Dall -DskipTests

Furthermore, I noticed while debugging a nightly-built jar that
timestamps are mixed, indicating that GeoTools was built without "clean".

Please tell me that I misunderstand this. Is Hudson doing something
clever that I do not comprehend?

I would very much prefer all nightly release artifacts to be built with
"clean install" and without test skipping, on stable and trunk. This is
the bare minimum quality standard my organisation requires for our
GeoServer trunk build, in which any unit test failure prevents an
artifact update:
https://cgsrv1.arrc.csiro.au/swrepo/GeoServerTrunk/latest/
http://geobuilder.arrc.csiro.au/geoserver/waterfall
http://geobuilder.arrc.csiro.au/geoserver/one_line_per_build

Kind regards,

--
Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.