What are some best practices for using continuous integration (e.g., Hudson) with mod-perl for apache module development?
I am looking into using Hudson to perform continuous integration testing for developing apache modules using mod_perl. Does anyone have any best practices or recommended strategies for utilizing these kinds of CI systems with apache modules?
I believe most CI systems are as simple as just accepting some common test output format, or even as basic as a true or false result from an external script.
You can easily wrap checking out code, starting a server, running tests against the server, stop the server and output in TAP format and either convert to corresponding format, or simply use the TAP output as the result against most CIs out there.
If using Test::Unit, the XML output is compatible with Hudson; check the JUnit option in the post-build section and point it at any XML files produced and you will have pretty nice test reporting.
We do this as well as using Devel::Cover and using the htmlpublisher plugin to archive and publish this.