Continuous Integration mit TeamCity Ralf Hoffmann 05/2017
Was ist „Continuous Integration“? Wikipedia: Kontinuierliche Integration ist ein Begriff aus der Software-Entwicklung, der den Prozess des fortlaufenden Zusammenfügens von Komponenten zu einer Anwendung beschreibt. Das Ziel der kontinuierlichen Integration ist die Steigerung der Softwarequalität. Typische Aktionen sind das Übersetzen und Linken der Anwendungsteile, prinzipiell können aber auch beliebige andere Operationen zur Erzeugung abgeleiteter Informationen durchgeführt werden. Üblicherweise wird dafür nicht nur das Gesamtsystem neu gebaut, sondern es werden auch automatisierte Tests durchgeführt und Softwaremetriken zur Messung der Softwarequalität erstellt. Der gesamte Vorgang wird automatisch ausgelöst durch Einchecken in die Versionsverwaltung. fortlaufenden Zusammenfügens Übersetzen beliebige andere Operationen automatisierte Tests Softwaremetriken ausgelöst durch Einchecken
Meine Wunschliste Must have Kontinuierliche Check-In Kontrolle Builden wenn etwas geändert wurde Tests Ausführen Informieren über Resultat Nice to have Build Historie Check-Ins -> Änderungen anzeigen Code Coverage Test Error Tracking: Welches Check-In führte eigentlich zum Fehler?
Warum TeamCity? JetBrains bekannt durch Resharper .Net ist „First class citizen“ Pro Version kostenlos für kommerziellen Einsatz Schneller Erfolg!
Nomenklatur Project Build Steps Build Configuration NuGet Build sln Web API Build And Test NuGet Build sln Run Unit Tests Start Host Run End To End Tests Stop Host Deploy on Demo Server Run Example Tests
Trigger für Build Configurations Check-In Git – auch Branches mit Wildcard Mercurial Perforce Team Foundation Server CVS Etc. Zeitbasiert Nach anderen Builds
Vordefinierte Build Schritte NuGet Installer Build: MSBuild, VS Studio Visual Studio Tests, optional: Coverage mit „dotCover“ NuGet Pack & Publish FXCop Duplicates Finder Powershell Command Line ... Git & Mercurial: Automatic Merge / Cascading Merge
Output - Übersicht
Tray Icon
Output - Historie
Output - Statistik
Output – Änderungen – Drill Down
Output – Build Fehler
Output – Test Fehler
Output – Test Historie
Output – Code Coverage
Plugins – mehr als 300 Cloud Builds & Deployment: AWS, Azure, OpenStack OAuth2 Authentication – z.B. Für GitHub Jira, Confluence, Slack, Telegram Mobile Apps APIs, z.B. REST, .Net, Python Radiatoren Etc.
Kosten
Kosten