Freitag, 30. April 2010

Kontinuierliche Integration mit Hudson

Manchmal ist das Evaluieren eines neuen Produktes eine anstrengende Arbeit und manchmal kommt es einem wie eine Befreiung vor.

Beim Thema kontinuierliche Integration war es letzteres.
Bisher verwendete ich hierfür Continuum. Dies verrichtete seine Aufgaben gut, die Features waren für meine Vorstellung absolut ausreichend.
Nervtötend war nur die Migration, wenn eine neue Version heraus kam. Es waren nie große Probleme, aber es war immer etwas: mal funktionierte die Derby DB nicht, mal gab es Struts Exceptions und manchmal ließen sich keine Projekte mehr hinzufügen.
Alles lösbar, aber störend, besonders wenn man eigentlich anderes zu tun hat.

Nachdem ich bei der aktuellen Continuum Version 1.3.6 wieder einmal eine nicht mehr funktionierende Software vorfand, beschloss ich, ein anderes Produkt auszuprobieren.

Somit lud ich Hudson 1.355 herunter und deployte es auf meinem Tomcat Server, auf dem auch Continuum lief.

Kaum deployed öffnete ich die Startseite und siehe da: keine Probleme. Ein paar kurze Klicks und Angaben, danach war der erste Build quasi out-of-the-box lauffähig, nach maximal 5 Minuten Arbeit.
Hudson speichert seine Einstellungen auf dem Dateisystem, somit war nicht mal das Konfigurieren einer Datenquelle nötig.
Das Konfigurieren der Subversion Repositories verlief ebenfalls sehr gut, Hudson bemerkte sogar sofort, dass Credentials für das Auschecken nötig sind und fragte diese ab.
Gewohnte Features wie Email-Benachrichtigungen, Scheduling der Builds, etc. sind enthalten und funktionieren ausnahms- und problemlos.

Eine echte positive Überraschung war für mich das Fingerprinting:
Hiermit kann Hudson feststellen, ob ein Projekt sich inhaltlich verändert hat und gegebenenfalls andere Projekte, die davon abhängig sind, ebenfalls bauen.

Damit sehr zufrieden und ungewohnt schnell wieder produktiv, beschloss ich in der nächsten Zeit ausschließlich Hudson zu verwenden.




Links:
Continuum
Hudson

Keine Kommentare:

Kommentar veröffentlichen