I work on a huge application with a primary project and a growing number of subprojects. At present, we manage the automated build process using a combination of perl and
Ant (submitted nightly via a Unix cron job).
The perl scripts manage setting and verifying system and environment properties, backup of the prior build, checkout from CVS, triggers the primary Ant build tasks, starts and stops our development Weblogic 6.1 server and precompiles our JSPs.
The Ant build script itself is large and complex (it includes
java and C++ compiles, javadocs, automated
unit tests etc), and additionally invokes perl wrappers for other Ant build files.
As our application grows larger, the build process becomes more and more convoluted and the number of sub-builds grows.
What tools are most effective for this type of scenario? I know that we could probably improve the process a lot by using a build.properties file instead of the separate perl wrapper scripts, and handling the CVS checkout directly from within Ant, but would we benefit from using Cruise Control, Maven or some of the other automation tools?
Suzanne Israel