Darmowe Continous Integration dla .NET

Istnieje parę rozwiązań pozwalających na realizacje CI dla projektów .NET . Duża ich część jest normalnie płatnym oprogramowaniem, często są dostępne też darmowe wersje demo.

W tym wpisie skupie się wyłącznie na 2 całkowicie darmowych serwerach CI.

Cruise Control .NET

Można powiedzieć, że jest to fork Cruise Control w wersji Java. Napisany całkowicie w .NET ? co jest niewątpliwą zaletą, ponieważ pozwala nam pracować w jednym środowisku i nie trzeba doinstalowywać dodatkowo wirtualnej maszyny javy.

Wersją cc.net, którą używam to CI-Factory, która  jest zbudowana z cc.net oraz dużej liczby skryptów NAnt pozwalających na kompilację poprzez MSBuild, uruchamianie testów, budowanie setupów WiX, czy tagowanie źródła tą samą etykietą co release. Używanie NAnt do budowania nie jest może jakoś szczególnie fajne i wygodne, ale w CI Factory jest już naprawdę dużo napisane i warto z tego skorzystać.

Jeśli chodzi o sam CC.NET można z nim używać dowolnych skryptów budujących, a wybór zależy tylko i wyłącznie od własnych preferencji.

Hudson

O Hudsonie pierwszy raz usłyszałem dopiero na spotkaniu PG.NET, opowiadał o nim Michał Korsak. To co mi się szczególnie spodobało to łatwość konfiguracji – wszystko można przeklikać przez interfejs w przeglądarce. Niestety napisany jest w Javie, co może być w sumie obojętne, ale dodaje dodatkową zależność.

ThoughtWorks(autorzy cc)  udostępnia ciekawy CI Feature Matrix, w którym można porównać funkcjonalności różnych serwerów CI.

Ciekaw jestem czego Wy używacie do CI w swoich projektach – plz wpiszcie w komentarze.

Tagged , , ,

9 thoughts on “Darmowe Continous Integration dla .NET

  1. Darmowe Continous Integration dla .NET…

    Dziękujemy za publikację – Trackback z dotnetomaniak.pl…

  2. Paweł says:

    Ja dość długi czas używałem CC.NET ale obecnie coraz więcej staram się używać TeamCity (na chwilę obecną w darmowej wersji). TeamCity też napisany w Javie i podobnie jak Hudson pozwala w łatwy sposób na zarządzanie projektami i konfiguracjami budowania projektów.

    Pozdrawiam,
    Paweł

  3. no właśnie – dużo ludzi ostatnio używa TeamCity. Nie do końca wiem jak go sklasyfikować bo 100% darmowy i otwarty to on nie jest. I to co jest niepokojące nie wiadomo jak długo będzie darmowy.

  4. Witold Bołt says:

    Ja polecam wspomnianego Hudsona. Fakt, że jest napisany w Javie nie wiele tu znaczy skoro do uruchomienia go wystarczy zainstalować czyste JVM i ściągnąć jeden plik z Hudsonem. Nie ma żadnej instalacji ani dodatkowych zależności. Wystarczy ściągnięty pliku uruchomić: java -jar hudson.war i działa.

    Oczywiście jako programista .NET może nie koniecznie chcesz mieć JVM na swoim komputerze, ale z drugiej strony pytanie czy w ogóle chcesz mieć serwer CI na swoim komputerze – czy nie lepiej oddelegować jakąś wirtualkę/oddzielny sprzęt do tego.

    Pomijając dywagacje o platformie – Hudson ma naprawdę mnóstwo pluginów do przeróżnych technologii i bardzo aktywną społeczność (nowe wersje pojawiają się naprawdę super często).

  5. Z ta java to sprawa bardziej ideologiczna, ale zawsze miło oszczędzić kilka megabajtow 😉

  6. Artur says:

    Od paru lat wierny jestem CC.NET. Działa, nie stwarza problemów. Pobranie źródeł, testy (NUnit), instalka (NSIS). Da się to wszystko wyrzeźbić w xml-u.
    A czy w Hudson mogę obejrzeć wynik buildu (-ów) na stronce na IIS? I czy ma coś takiego jak CCTray?

  7. hudson ma coś takiego jak dashboard w cc.net tzn możesz zobaczyć na stronce stan builda, nie działa co prawda to na iis.

    a czy jest coś ala cc tray hmm, wujek google mówi: http://wiki.hudson-ci.org/display/HUDSON/Hudson+Tray+Application

  8. […] This post was mentioned on Twitter by Maciej Zbrzezny. Maciej Zbrzezny said: Darmowe Continous Integration dla .NET: http://bartekszafko.pl/2010/04/06/darmowe-continous-integration-dla-net/ […]

  9. tc says:

    TeamCity ma fajne wsparcie z wnętrza VS, jest super prosty w obsłudze i ma “Private Builds” (pre-commit).

Leave a Reply

Your email address will not be published. Required fields are marked *