Announcing TeamCity.CodeBetter.com

teamcity.codebetter.com

CodeBetter – in collaboration with JetBrains, IdeaVine, and Devlicio.us – is proud to announce the launch of TeamCity.CodeBetter.com – a continuous integration server farm for open source projects. JetBrains is generously supporting our community efforts by funding the monthly costs of the server farm and providing a TeamCity Enterprise license. Volunteers from CodeBetter, IdeaVine, and Devlicio.us are administering the servers and setting up OSS projects on the build grid. We are currently providing CI for the following projects (in alphabetical order):

We will be adding additional OSS projects in the coming weeks/months. You can register for an account here or log in as a guest. By default, new users can view all hosted projects. If you are a project member, you can email us at teamcity@codebetter.com to have us add you as a project member. (N.B. You only need to be a project member on TeamCity if you need to manage/modify the build.)

The current build grid consists of:

  • TeamCity – Dual CPU Quad-Core Xeon 5310 @ 1.60 GHz (clovertown) with 4GB RAM & 2x250GB SATA II in RAID-1
  • Agents – Single CPU Dual-Core Xeon 5130 @ 2.00 GHz (Woodcrest) with 4GB RAM & 2x250GB SATA II

Both are physical servers hosted by SoftLayer. As we add more projects, we will add additional agent servers to distribute the load. Each agent will have the following software installed:

  • Microsoft Windows Server 2003 R2 Standard x64 Edition SP2
  • Microsoft .NET Framework 1.1, 2.0 SP2, 3.0 SP2, 3.5 SP1
  • Microsoft .NET Framework 2.0 SDK
  • Windows SDK 6.1
  • Microsoft SQL Server 2008 Express (64-bit)
  • Ruby 1.8.6-26 (including rake, rails, activerecord, and rubyzip)

Build scripts can be authored in NAnt, MSBuild, Rake, or any other build runner supported by TeamCity. The build farm monitors your current version control system – at SoureForge.net, Google Code, or elsewhere – for changes and supports Subversion, CVS, and other popular source control systems. (TeamCity 4.0.2 – current version – does not support GIT. GIT support is planned for the 4.1 release, which should to be released at the end of March. We will upgrade to TeamCity 4.1 as soon as it is released.)

Projects can use SQL Express for integration testing. N.B. We will not be manually setting up databases, virtual directories, or other services for projects. If you need a database created, your build script must include its creation/teardown.

If your build script includes unit/integration tests, TeamCity can display the results in the UI if they are in the correct format. We can work with individual projects to ensure that this is the case. TeamCity can archive build artifacts and make them available for download if projects want to make CI builds available to the community.

TeamCity has rich notification mechanisms for communicating build status of projects, including email, IDE (VS, IntelliJ, Eclipse), and Windows Tray notifiers. Alternately you can subscribe to the build server’s RSS feed for succeeded and failed builds, succeeded builds only, or failed builds only. You can make use of these tools to stay apprised of current build health as team members check in changes to source control. All notifiers can be downloaded and configured through the My Settings & Tools menu on the TeamCity server itself.

If you would like your OSS project considered for free CI hosting, you must meet the following requirements:

  • Active project with a commit in the last 3 months.
  • OSI-approved OSS license with a publicly available source.

We will prioritize requests for hosting solely at our discretion, though we will try to accommodate as many requests as possible. (We do have day jobs, you know.) smile_regular We reserve the right to remove projects from the build farm that are monopolizing farm resources. (i.e. If a build script pegs all CPUs at 100% for one hour at a time, it’s going to get disabled so as to be fair to other projects.)

To apply to have us host CI for your OSS project:

  • Register a user account here.
  • Email teamcity@codebetter.com with the following information:
    • Your user account name, which you created above.
    • Project name & URL.
    • Link to your OSI-approved OSS license.
    • URL and type (SVN, CVS, …) of your source control system.
    • Build runner (NAnt, MSBuild, Rake, etc.) and default target.
    • Any additional requirements you might have.

CodeBetter, JetBrains, IdeaVine, and Devlicio.us are looking forward to providing free continuous integration hosting for the open source community. Please email us at teamcity@codebetter.com if you have any questions or comments.

About James Kovacs

James Kovacs is a Technical Evangelist for JetBrains. He is passionate in sharing his knowledge about OO, SOLID, TDD/BDD, testing, object-relational mapping, dependency injection, refactoring, continuous integration, and related techniques. He blogs on CodeBetter.com as well as his own blog, is a technical contributor for Pluralsight, writes articles for MSDN Magazine and CoDe Magazine, and is a frequent speaker at conferences and user groups. He is the creator of psake, a PowerShell-based build automation tool, intended to save developers from XML Hell. James is the Ruby Track Chair for DevTeach, one of Canada’s largest independent developer conferences. He received his Bachelors degree from the University of Toronto and his Masters degree from Harvard University.
This entry was posted in Agile, featured. Bookmark the permalink. Follow any comments here with the RSS feed for this post.
  • http://codebetter.com/members/james.kovacs/default.aspx james.kovacs

    @Mauricio – Thanks for creating the UserVoice forum. Should be interesting to see what people have to say. FYI – If a project requires a particular dependency that can’t be run from a “tools” directory within the project, we will install it providing that it doesn’t interfere with other projects or open a security hole on the servers.

  • http://bugsquash.blogspot.com Mauricio Scheffer

    I just created a uservoice forum so people can vote on what features they’d like to see on these servers: http://codebetterteamcity.uservoice.com

  • http://www.craigslistdecoded.info Sarah

    I recently came across your blog and have been reading along. I thought I would leave my first comment. I don’t know what to say except that I have enjoyed reading. Nice blog. I will keep visiting this blog very often.

    Sarah

    http://www.craigslistdecoded.info

  • http://kozmic.pl Krzysztof Kozmic

    This is huge!
    great news.

    Good luck!

  • Karl Böhlmark

    This is _really_ great. Thanks a lot!

  • http://www.ncover.com Joe Feser

    I’ll put in the time to get NCover integrated with TeamCity.CodeBetter.com.

    Joe Feser

    NCover

    joe @@identity ncover expedia dot com.

  • http://www.ncover.com Daniel Waldschmidt

    Let’s add NCover to provide even more value to this great bundle for OSS projects. I am the Product Evangelist and would be willing to get our team involved if you see the value….

    Daniel Waldschmidt
    NCOVER
    daniel[at]ncover[dot}com

  • http://flux88.com Ben Scheirman

    I have been waiting for such a service to pop up! Thanks to Jetbrains and the rest of you guys for putting this thing together.

  • http://www.mostlyclean.com Steve Burman

    If there was a commercial version of this offering for my own projects, I would sign up and pay immediately. Removing the overhead of me setting up my own CI server at home would be a very valuable service.

    I think that this is a nice proof of concept. I just wonder what it would take to make something like this available commercially?

    p.s. TeamCIty is SO nice. I love it.

  • http://blog.prokrams.com MIchael Letterle

    That’s really cool. Thanks for supporting the community!

    By the way the Gallio test runner (http://www.gallio.org) supports TeamCity via an extension, works excellent! Just plug it in to your current scripts and run whatever test framework you already have.

  • http://codebetter.com/blogs/jeremy.miller Jeremy D. Miller

    Very well done guys! Thanks for all your work on this one.

    (and I’m fixing the StoryTeller build right now)