Reputation: 55760
What is the best continuous integration setup for a Devleopment department that codes in multiple environments?
At my company we write some code in C# and some in Java, I've previously used CC.Net but I've never done CInt with Java.
I'm aware of Continuum and was recently told about Hudson, but I've never used either.
Would it be better to use two CInt services one for each platform or to use a single one for both?
Upvotes: 3
Views: 1584
Reputation: 7080
Hudson. I've used it for both .NET and Java projects and it works well to have both platforms using the same continuous integration server.
Upvotes: 1
Reputation: 14736
Imho, its almost alway better to use one CI for all platforms you plan to deploy to - easier to sort out problems that way.
shameless plug: try Bamboo, the CI server from Atlassian. Its one click setup, built-in support for Ant and Maven and works on all platforms with JVM. It can also do distributed builds on different platforms.
It also integrates with Atlassian Jira Issues Tracker and Fisheye Code Repository Browser if you have those products.
Upvotes: 1
Reputation: 6335
Why don't you try Team City from JetBrains? It is both for Java and C# and Professional version is free up to 20 user accounts and 3 build agents.
Upvotes: 5
Reputation: 51917
As you already know how to use CC.Net and CC.NET can run any build task that outputs XML. Why not just use CC.NET with ant for your java code as well as your C# code.
Or do you need to build on none Windows machine? CC.NET may work with mono, I have not checked.
Remember that any continuous integration setup that compiles all your code and run your unit tests give you great benefits. On most projects having the perfect setup only give a smaller improvement over having a continuous integration setup that works. So I would just pick something you are happy with and start using it now.
Upvotes: 2
Reputation: 39883
Note this assumes you want to build the same code on multiple platforms. Hardware has gotten cheaper so use virtual machines or multiple physical servers I'd go with virtual machines and just buy one powerful server to run them on but if you have a lot of old mid range hardware that may be a cheaper option. Set up a main source control repository on one server, and set up servers with the client operating systems you want to build for. For example have a svn server containing your operating system of choice, a Linux server to do Linux builds and a Windows server to do Windows builds. Then just install what ever continuous integration software works best for the given code base and operating system.
Upvotes: 0
Reputation: 23648
You could simply use the Java version of CruiseControl and have two setups.
Upvotes: 4