Entwickler-Ecke

Programmierwerkzeuge - Empfehlung Build/CI Server


erfahrener Neuling - Do 11.08.16 16:19
Titel: Empfehlung Build/CI Server
Hallo Entwickler,

Folgendes: Ich wollte mir auf einem Windows-Rechner einen Build-Server aufsetzen. Im Moment tendiere ich zu Microsofts Team Foundation Server Express [https://www.visualstudio.com/de-de/products/tfs-overview-vs.aspx] oder zum TeamCity Server [https://www.jetbrains.com/teamcity/]. Beide (vorallem TeamCity) sind recht beliebt und scheinen ganz useful zu sein. Das ganze soll für ein Team von 4-5 Leuten und hauptsächlich für Visual Studio Projekte sein.

Nun aber meine Frage[n]: Habt ihr schon Erfahrungen damit gemacht und welche Kriterien waren für euch entscheidend? Worauf sollte man achten (als totaler Neuling)? Gibt es bessere (am besten kostenlose) Alternativen?

Danke schonmal für die Beteiligung an der Diskussion, ich hoffe ihr habt da ein paar nützliche Tipps und Tricks für mich ;)

Grüße
Julian


Ralf Jansen - Do 11.08.16 16:46

Für mich wäre der entscheidende Faktor wie gut es sich in eure vorhandene Tool-Chain anfügt.
Wenn ihr schon Tools zur Projektplanung, Bugtracking, Ticketing, Versionsverwaltung, Testing oder was auch immer habt sollten die gut mir dem neuen Tool kooperieren oder noch besser sich integrieren.
Nichts ärgert in einem Team mehr wenn bestimmte Dinge die man bei der Projektabwicklung tut mehrmals macht weil Systeme schlecht oder gar nicht miteinander können.


jfheins - Mo 15.08.16 19:53

Ich habe mal Buildmaster [http://inedo.com/buildmaster]verwendet und kann das sehr empfehlen. Ich habe allerdings TeamCity nicht getestet, da BM bereits meine Anforderungen erfüllt hat.

Die Unterschiede vermute ich darin, dass TC eher CI lastig ist, und sich damit z.B. eignet um zu jeder SVN Revision (oder git commit) einen Build zu erstellen, zu testen und Fehler zu melden.
Bei Buildmaster dreht es sich mehr um das Veröffentlichen und man kann Prozesse definieren, um Builds reproduzierbar zu verändern und zu veröffentlichen.
Aber es gibt dazu auch eine Seite vom Hersteller: http://inedo.com/support/kb/1023/a-comparison-between-buildmaster-vs-teamcity

Als einzelner Entwickler an einem mittelgroßen Projekt habe ich BM bevorzugt, da ich oft compilieren und lokal testen konnte, die meisten commits waren somit bereits compilierfähig. In BM gab es dann den Prozess "Repo von github pullen, neuesten commit mit Versionsnummer taggen, pushen, Binary aus Repo erzeugen und in die Testumgebung veröffentlichen" und später natürlich dann "binary in Produktivumgebung veröffentlichen, DB Verbindung in der web.config anpassen"