Tag Archives: Continuous Integration

Bamboo 5.12: Schnellfilter und verbessertes Nutzermanagement

Die Suche ist in der heutigen Welt der Software-Entwicklung eines der wertvollsten Features. In der Lage zu sein, in tausenden Codezeilen oder hunderten von Agile-Boards, Build-Plänen und Tests schnell die gewünschten Informationen zu finden, ist eine Notwendigkeit für Teams, die effizient arbeiten wollen. Und viele Software-Teams arbeiten mit sehr großen und weiter wachsenden Bamboo-Instanzen mit hunderten Projekten und Plänen. Atlassian hat seinem Integrations-Server Bamboo nun erweiterte Filter- und Suchmöglichkeiten spendiert und außerdem eine zusätzliche Option für das Benutzermanagement integriert, die Tool-Switching vermeidet.

Bamboo 5.11 für skalierende Continuous Integration

Wachstum ist die Lieblingsherausforderung, die Unternehmen haben. Mit der Skalierung von Continuous Integration können jedoch begrenzte Ressourcen, fehlendes Tracking von Prozessen, ineffiziente Zusammenarbeit, Sicherheitsrisiken und Probleme beim Nutzermanagement einhergehen. Die neue Version von Atlassians CI-Server Bamboo unterstützt skalierende Entwicklungsteams durch bis zu 250 Build-Agents und weitere nützliche Enterprise-Features nun noch besser.

Behaviour Driven Development und Bamboo: Visualisierung von Cucumber-Szenarien

Verhaltensgetriebene Entwicklung (Behaviour Driven Development, BDD) setzt sich zum Ziel, in Software-Projekten die beteiligten Akteure von Stakeholdern bis zum Entwickler zusammenzubringen und funktionale Anforderungen in einer einfachen, verständlichen und normierten Sprache zu dokumentieren. Ein häufig verwendetes Tool, das als Bindeglied zwischen textueller Anforderungsbeschreibung und konkretem Software-Test dient, ist Cucumber. In diesem Tutorial demonstrieren wie, wie Cucumber-Szenarien auf einem Bamboo-Server ausgeführt und wie Testergebnisse visualisiert werden können.

Continuous Delivery in der Praxis: Deployment auf Knopfdruck und Release-Verwaltung mit Bamboo

Continuous Delivery macht es sich zum Ziel, durch hochgradige Automatisierung Entwicklungskosten zu senken, Deployment-Vorgänge zu beschleunigen, die Qualität der Prozesse zur erhöhen und so auch flexibler und frühzeitiger auf Kundenanforderungen eingehen zu können. Wie sich dies in der Praxis gestaltet, ist Gegenstand dieses Artikels: Wir werden Atlassians CI-Server Bamboo konfigurieren, um eine einfache Java-Web-Anwendung auf einem Tomcat-Anwendungsserver per Knopfdruck zu installieren.

Code-Qualität optimieren mit SonarQube und Bamboo

Automatisierte statische Code-Analysen des Quelltextes eines Software-Projekts helfen, bestimmte Arten von Fehlern frühzeitig systematisch aufzudecken. Ein etabliertes und hilfreiches Tool für diesen Anwendungsfall ist SonarQube (früher schlicht Sonar). Im folgenden kurzen Tutorial zeigen wird, wie SonarQube in wenigen Minuten eingerichtet und in einen Build eines Bamboo-Integration-Server integriert werden kann.

Code-Coverage-Metriken mit Bamboo und Clover

Wie lässt sich die Code-Qualität eines Software-Projektes ermitteln? Wie kann eine möglichst hohe Qualität sichergestellt werden? Natürlich durch Software-Tests – diese müssen jedoch erstellt und in das Projekt integriert werden. Vor diesem Hintergrund erweisen sich Werkzeuge als hilfreich, die Code-Coverage-Metriken ausgeben und die ein solches Software-Projekt automatisiert als Ganzes analysieren können. Weit verbreitet und ausgereift ist in diesem Zusammenhang Clover von Atlassian, das in wenigen Minuten aufgesetzt ist.

Individuelle Software-Entwicklung: Workflows, Branching-Modelle und Continuous Delivery

Software-Entwicklung in einem großen Kundenprojekt funktioniert natürlich nicht nach dem Prinzip “Auf die Plätze, fertig, hacken!” Vielmehr handelt es sich um einen komplexen Prozess, der einerseits hohen Qualitäts- und Sicherheitsanforderungen unterliegt und der andererseits viel Flexibilität bieten muss. In diesem Beitrag zeigen wir auf, wie ein //SEIBERT/MEDIA-Entwicklungsteam in einem Individualsoftware-Projekt ein neues Feature entwickelt, welche Workflows dabei zugrunde liegen und welche Werkzeuge uns in diesem Prozess unterstützen.