Menü
Developer

Continuous Integration: TeamCity 10 bekommt Kotlin-basierte DSL

Entwickler können JetBrains' Continuous-Integration-Server mit der angepassten Sprache programmatisch steuern. Außerdem gibt es offizielle Docker-Images für den Server und die Agenten.

vorlesen Drucken Kommentare lesen
Continuous Integration: TeamCity 10 bekommt Kotlin-basierte DSL

Der Toolanbieter JetBrains ist vor allem für Entwicklungsumgebungen wie IntelliJ IDEA bekannt. Im Bereich Continuous Integration (CI) ist JetBrains' TeamCity im Vergleich zum Platzhirsch Jenkins dagegen ein klarer Außenseiter. Version 10.0 will nun mit zahlreichen Neuerungen punkten, die vor allem die Automatisierung und das Zusammenspiel mit anderen Werkzeugen verbessern. Für viele Nutzer dürfte die Einführung einer eigenen Domain Specific Language interessant sein: Mit der auf JetBrains JVM-Sprache Kotlin aufbauenden DSL können Entwickler Build-Prozesse programmatisch steuern, statt sie über die Web-UI zu erstellen.

Gleichzeitig soll die überarbeitete Oberfläche für eine bessere Übersicht sorgen. Sie ist für hochauflösende Displays optimiert und verwendet leichtgewichtigere Steuerelemente. Eine besondere Herausforderung im CI-Alltag sind Tests, die nur gelegentlich fehlschlagen. TeamCity hebt die Ergebnisse solcher "flaky tests", die ohne Code-Änderung unterschiedliche Verhalten zeigen, gesondert hervor.

"Flaky Tests" sind in der Übersicht leicht erkennbar.

(Bild: JetBrains)

Außerdem dürfen Entwickler den Build-Prozess auf einen separaten Server auslagern und so den Hauptserver entlasten. Zu dessen Entlastung soll auch der auf die Agenten verlagerte Checkout-Prozess beitragen. Für eine bessere Übersicht über mehrere Server soll das neue Project Pop-up sorgen, das mehrere Server verbindet und eine Suche über alle Server und Konfigurationen ermöglicht. Zur Verwendung in Containern bietet JetBrains offizielle Docker-Images des Servers und der Agenten auf DockerHub an.

Auch die Verbindung zu anderen Systemen haben die Macher überarbeitet. So können Entwickler Projekte direkt von bestehenden GitHub- oder Bitbucket-Repositories erstellen und die jeweiligen Issue-Tracker verbinden. Umgekehrt ist es möglich, den Build-Status auf Bitbucket, GitHub, GitLab und Upsource zu veröffentlichen. Die Verbindung zu Microsofts Team Foundation Server ist plattformübergreifend auch von Linux und OS X aus möglich. Nutzer können zudem die Projekteinstellungen mit denen in TFVC (Team Foundation Version Control) synchronisieren. Auch können sie Tools wie NuGet automatisiert auf den Agenten installieren und dabei unterschiedlichen Builds verschiedene Versionen zuteilen.

Vorstellung der DSL

Weitere Details stehen in der Ankündigung zu TeamCity 10.0. Team City ist im Gegensatz zu Jenkins keine Open-Source-Software, für einen Server mit bis zu drei Agenten und 20 Build-Konfigurationen jedoch kostenlos. Ein Paket aus 10 zusätzlichen Build-Konfigurationen und einem zusätzlichen Agenten kostet 300 Euro. Enterprise-Lizenzen sind ab 2000 Euro erhältlich. (rme)