07 Dec
2007

JetBrains TeamCity 3.0: First Look, Continuous Integration mal einfach

 

TeamCity stand schon lange auf meiner Liste der Tools die ich unbedingt mal ausprobieren muss. Nun hat JetBrains TeamCity in der Version 3.0 herausgebracht. Eine der Neuerungen liegt im Lizenz-Modell, es gibt nun eine kostenlose Professional Version die auf 20 Benutzer und 20 Build-Konfigurationen beschränkt ist. Das reicht sicherlich in vielen Fällen. Und war ein Anreiz es endlich mal zu probieren.

Als leicht gefrusteter Anwender von CruiseControl.NET suchte ich schon länger nach einer alternative. Gefrustet aus dem Grund da die Konfiguration von CC.NET nicht wirklich trivial ist und man sich in dem XML Wust etwas verliert. Es gibt zwar kleine Tools die einem da helfen möchten, aber bei den komplexen Konfigurationen versagen diese (CI-Factory habe ich noch nicht probiert). Hey, wir leben im Jahr 2007 und ich will das mich der Computer soweit es geht unterstützt.

Gestern Abend mal eben TeamCity 3.0 installiert und sehr schnell zu einem Ergebnis gekommen.

Projects

Das ganze ist ein Java basierendes System welches mit Tomcat als WebServer ausgeliefert wird, eine Intergration in den IIS oder Apache ist wohl nicht vorgesehen somit muss man entweder einen anderen Port als 80 oder 443 verwenden sofern diese auf dem Server schon in Verwendung sind. Trotzdem ist eine .NET Unterstützung mit Board und man wohl auch Erweiterungen in .NET Entwickeln. Auch gibt es ein Visual Studio AddIn und ein Tool für das SystemTray.

build

Gefallen hat mir das man sehr viel über eine Web Oberfläche Konfigurieren kann und mit ein paar Mausklicks schon Ergebnisse hat die brauchbar sind. Aufrufen von NAnt oder MSBuild Scripts, bauen von Visual Studio Solutions und Projekten alles schnell und einfach eingerichtet. Das laufen lassen von Unit Test (mitgeliefert wird nur NUnit und VSTS) ist auch ein Eintrag (sofern man seine Test-Assemblies nett benennt) und fertig.

Auch sehr schön finde ich das man ein Personal Build machen kann, d.h. auf dem Build Server wir ein spezieller Build angestoßen mit den eigenen Änderungen und wenn alles durchgelaufen ist kann man dies dann richtig in SubVersion oder Team Foundation Server einchecken. Somit hat man eine erhöhte Sicherheit beim einchecken um lokale Abhänigkeiten z.B. auszuschließen.

uebersicht

Build-Agents lassen sich einfach auf mehrere Rechner installieren und ermöglichen so das Load Balancing umfangreicher Builds auf mehreren Servern. Bis zu Build-Agents sind in der kostenlosen Version möglich.

Dazu wird ein Visual Studio AddIn mitgliefert, welches dann auch das einchecken in Subversion übernimmt. Eine Integration ala VisualSVN wird einem damit jedoch nicht geboten.

Sehr schön ist auch dass man wenn eine Serververbindung mit Anmeldung einrichtet (SubVersion, EMail etc.) das man direkte Test-Möglichkeiten hat ob auch alles richtig eingetragen ist.

Missfallen hat mir das TeamCity 3.0 wohl nicht mit dem aktuellen NUnit 2.4.3 zurecht kommt, die Test laufen zwar alle durch trotzdem schlägt der Build fehlt da abhänigkeiten nicht aufgelöst wurden, ob dies an mir lag oder an TeamCity ist noch nicht geklärt. Ist halt nur ein First Look.

Natürlich wird man für aufwendigere Builds nicht um eigene Build-Skripte herumkommen, doch für das Brot und Butter CI hat man schon eine sehr schönen Einstieg worauf man sicherlich aufbauen kann.

Wird TC nun CC bei mir ablösen? Für dass eine oder Projekt sicher. Ich muss schauen wohin TC sich entwickelt und wie der PlugIn Situation sich dafür entwickelt. Die Enterprise Version die eine unlimitierte Anzahl von Benutzer und Build-Konfigurationen ermöglicht koste $ 1999 und jeder weitere Build Agent $ 299. Für Open Source Projekte gibt es eine kostenlose Enterprise Lizenz.

Einen Blick darauf werfen sollte man auf jeden Fall wenn einem CC.NET nicht zugesagt hat.


Der Eintrag ist mir etwas Wert
 

Feedback

# re: JetBrains TeamCity 3.0: First Look, Continuous Integration mal einfach

left by Michael Hüttermann at 12/27/2007 10:01 PM Gravatar
Danke für den schönen Erfahrungsbericht. Es ist interessant für mich zu sehen, wie ein .NET-ler das Werkzeug sieht, da ich ja eher aus der Java-Brille auf das Tool schaue. TC hat bei mir CruiseControl nicht gänzlich abgelöst, ist aber eine ausgezeichnete Alternative.

Ich wünsche noch viel Spaß mit diesem wunderbaren CI-Server. :-)

Michael

# re: JetBrains TeamCity 3.0: First Look, Continuous Integration mal einfach

left by Silver at 12/28/2007 9:00 AM Gravatar
Do you have any plans doing an MbUnit plugin also for TeamCity?

# re: JetBrains TeamCity 3.0: First Look, Continuous Integration mal einfach

left by Alex at 7/22/2008 12:52 PM Gravatar
Wichtiges AddOn für TC:
http://code.google.com/p/buildbunny/

Alex
Comments have been closed on this topic.