We currently use once cc.net server for our build process, which builds both .net (using msbuild & nant) and java (using maven and ant).
CC.net monitors source control, and triggers a remote build running on a separate server. CC.net then collates the results.
When we run the remote build, it typically:
- runs nunit or junit or similar using mocked data
- optionally runs a DB script to create a fresh database instance or restore a database from a known position.
- runs selenium or similar to test UI
- runs emma or ncover for code coverage
- builds the system for various deployment environments (test, acceptance, production)
We may have several builds running at a time, some .net and some java (from different project teams).
It's quite time consuming to get the remote builds working when we set up a new project and we feel that there must be something more suited to remote builds than cc.net.
Does anyone have any experience with remote builds with continuous integration systems?
I don't really want feature lists of CI servers, I'd more appreciate hearing about how you've used them in a multi language, multi server environment.