Take the 2-minute tour ×
Game Development Stack Exchange is a question and answer site for professional and independent game developers. It's 100% free, no registration required.

Which continuous integration technology & software would you recommend for use with games?

Also are there any build technology libraries or specific languages you would recommend to use when a custom part of the game asset pipeline needs to be coded in-house?

Are there any good resources for demonstrating the business case for using continuous and automated build systems for games?

share|improve this question
    
Off topic - not specific to game development - belongs on stackoverflow.com (e.g. stackoverflow.com/search?q=continuous+integration+technology ) –  Danny Varod Jul 21 '10 at 18:52
5  
I'd respectfully disagree - the requirements of CI system used in games have to deal with a great deal of different types of build processes, bespoke and otherwise. Different types of source control (AlienBrain, Perforce) than you might find in other places. Development kits might be installed that are not available to the general public, perhaps even installed simultaneously to target different platforms and variations within that platform. I take the point this overlaps with general software engineering, but there is specific domain knowledge that could be shared here. –  paulecoyote Jul 21 '10 at 20:36

4 Answers 4

Buildbot
I know several studios in games and visual effects that use Buildbot.

Over the past year I've worked with our build system to implement a continuous integration strategy for the studio. We are a multi-platform studio (win, lin, osx) which Buildbot can handle well. I'm able to fire up slaves on multiple boxes, execute, and report back to the master so it can display the results. I can see box execution logs from the master whenever I want. I can hook into other slaves so when one slave finishes it fires off a signal for other slaves to start.

So far I have really enjoyed using it and still don't really know it's absolute capabilities. I think the biggest pain will be setup. I wasn't involved in setting the one at my studio up, but it sounded like a pain.

share|improve this answer

Cruise (Now Renamed Go)

http://www.thoughtworks-studios.com/go-agile-release-management

Cruise is quite possibly the best CI I've used because it understands a release pipeline, which allows you to set up a set of rules for moving a particular packaged build from stage to stage, and allows people to grab build artifacts at any stage through REST. It also supports distributing jobs across multiple agents in its Pro version.

That said, Cruise is DEFINITELY meant for enterprise developers, and thus it's expensive. I've been meaning to talk to them about changing their pricing plan to get game companies into the fold, but so far, no luck.

share|improve this answer

Hudson is by far the best continuous integration app ever.

It's free (open source I think), and it comes packaged in a single .war file, or you can opt for the standalone package with a small Tomcat (I think) application server -- either way, super easy install.

The user interface is amazing. The list of plugins goes on and on (it'll be compatible with whatever systems you use - bug trackers, source control systems, etc.). You can have multiple user accounts with different permissions. Adding a project, tweaking settings, or viewing previous runs is all really easy to do through the browser.

You really just have to try it. Don't bother configuring text files like Cruise Control requires; Hudson is a night-and-day difference from that.

share|improve this answer

CruiseControl.NET is a good choice that we've used in-house a few times; it's free, and it comes with a desktop app that clearly shows you when people are breaking the build.

There's also Pulse, which is extremely well featured and has a spiffy web interface. It's comes with a cost, however, as you need a license to run it per build server.

We use our CI servers to build our code whenever anyone makes a commit, which is the standard use case - but all of our game assets are set up to be built by our CI servers, and we're about to hook up daily disc builds, so that our QA team has an ISO build ready to test every morning.

It saves a lot of programmer time (invariably, it's always a programmer that does this stuff) in having to manually build code/assets/discs all the time.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.