6

Gibt es Unterschiede zwischen der ursprünglichen CruiseControl und dem .NET-Port? Ich habe die 2 verglichen, kann aber keine großen Unterschiede finden außer der Sprache, in der sie entwickelt wurde. Ich möchte eine von ihnen für (automatisiertes) Testen von Webanwendungen verwenden, mit Selenium und Subversion, vielleicht sogar Groovy aber Ich weiß nicht, welches ich wählen soll.Unterschiede zwischen CruiseControl (Original) und CruiseControl.NET

[Bearbeiten] Nach einem Blick auf CC und Hudson, ich habe Hudson gewählt für es Einfachheit ist es bereits Plugins hat Groovy-Skripte und Selen sowie

+0

Teamcity ist auch eine gute Wahl. Es gibt eine gute Frage zu den Unterschieden zwischen teamcity und cc.net http://stackoverflow.com/q/195835/23659 –

Antwort

6

Wählen Sie mich, wählen Sie mich! (Ich arbeite an der ursprünglichen CruiseControl.)

Ich habe nie CC.NET verwendet, aber von dem, was ich weiß, stimme ich überein, dass sie ziemlich vergleichbar sind. Der wichtigste Unterschied ist wahrscheinlich nur plattformübergreifend vs. Windows.

Jetzt frage ich mich, wie lange, bis jemand kommt und sagt ihre beiden Mist und Sie sollten versuchen, Hudson? ;)

(Und natürlich gibt es lots of other choices ...)

+1

Ich werde ein Update geben, auf dem ich gewählt habe, aber Hudson sieht gut aus, einfach und mit genug Option für mich: P – Tuxified

0

ich für Sie denken, laufen wird es zu Betriebs kommen System, Original kann auf Nix laufen, und .net-Version läuft auf Windows.

Es gibt andere automatisierte Build-Dienstprogramme, die dies auch tun können, wie TeamCity im Windows-Space und cruisecontrol.rb in der Ruby-Welt.

Außerdem gibt es ein PowerShell-basiertes Build-Dienstprogramm namens pSake, das Subversion abfragen und Aufgaben ausführen kann.

2

CruiseControl.NET (cc.net von nun an) hat Warteschlangen bauen (http://confluence.public.thoughtworks.org/display/CCNET/Project+Configuration+Block), die Sie baut auf einem bestimmten Bauauftrag das hängt zu serialisiert erlaubt . Ich bin dabei, dieses Verhalten in der Java-Version von Cruisecontrol zu emulieren, aber die Funktionalität wird nicht eins zu eins zugeordnet. Der Grund dafür, dass ich überhaupt von der .net- zur Java-Version übergehe, ist, dass der Kern der .net-Version mit mono (cc.net nightly build und mono nightly build wie vor zwei Monaten) ablegt. Der Fehler liegt in der Handhabung von Monos-Threads, aber es führt dazu, dass ccnet nicht mehr läuft.

Die Dokumentation hierzu kann schwierig zu finden sein, wenn Sie die Versionsnummern nicht beachten, an die sich die Konfigurationsbeispiele/Dokumentation halten (confluence.public.thoughtworks.org hat die aktualisierte Konfigurationsdokumentation, während ccnet.sourceforge.net Ich weiß, dass die Ccnet höchstwahrscheinlich eine tote Seite ist, aber wenn Sie die Datumsstempel auf jeder Seite, die Sie besuchen, nicht sorgfältig lesen, kann das Sie beißen.

Darüber hinaus sind die SourceControl-Blöcke für CVS und SVN in cc.net granularer und funktionsreicher als ihr Gegenstück in der Java-Version, aber das war kein Problem in meiner Arbeit. Die Java-Version ist auch einfach zu erweitern/modifizieren re: Plugin-Verhalten, aber Sie würden wirklich gerne sehen, dass diese Art von Arbeit Upstream statt Forking geht.

Ich bin sowohl von der Java-Version als auch von der Fork in .net (Modulo-Mono-Laufzeitverhalten) ziemlich beeindruckt, aber Sie wollen wirklich keine der anderen Gabeln von cruisecontrol ausprobieren. Ich hatte periphere Erfahrung mit Hudson, und die Funktionen waren einfach nicht zwingend genug, um mich von Cruisecontrol abzulenken. Hudson hat eine (etwas farbige) Vergleichs-Karte von Hudson und CruiseControl (Java) um http://hudson.gotdns.com/wiki/display/HUDSON/Home

Eine praktikable Alternative ist der Python implementiert Buildbot (http://buildbot.net/trac).Es hat keine schicken Gui-Dashboards und das Setup ist etwas mehr an die Befehlszeile gebunden, aber wenn du verteilte Builds machst, ist es sehr einfach einzurichten und loszulegen.