Eine Auswahl praktischer Plugins für Schüler und Profis gleichermaßen.
Eficode
Eficode is the leading DevOps company in Europe, driving and building the future of software development across 10 countries, with 500+ experts in DevOps and sustainable software development. Our Eficode ROOT managed DevOps platform provides centralized access control and real-time visibility of project status, quality, and performance that integrates with 50+ of your preferred tools, including the Atlassian Stack and open-source systems like Jenkins and Kubernetes.
Vor langer Zeit hat Praqma eine Liste nützlicher Jenkins-Plugins zusammengestellt, die euer CI-Leben bereichern sollten. Doch 2013 ist längst Geschichte, und wir fanden, dass unsere Liste dringend eine umfassende Überarbeitung braucht.
Jetzt präsentieren wir euch eine aktualisierte Liste praktischer Plugins, die Probleme lösen, von denen ihr nicht einmal wusstet, dass ihr sie habt.
Übersicht
Server-PluginsServer-MonitoringVerschachtelte AnsichtenSicher neu startenGrüne Kugeln
Pipeline-PluginsBuild-PipelinesBuild-Badges und PromotionsEin besseres Dashboard erstellen
Job-PluginsJobs als CodeJob-Skripting und ParametrisierungAnalyseCompiler-WarnungenTestergebnisse und TestabdeckungAufgabensucheVerlauf der Job-Konfiguration
AnalyseCompiler-WarnungenTestergebnisse und TestabdeckungAufgabensuche
Server-Plugins
Server-Monitoring
Plugins:Disk Usage, Monitoring
Wenn ihr euren Server im Blick behaltet, könnt ihr unangenehme Situationen vermeiden. Warum nicht Plugins einsetzen, die ein grundlegendes Monitoring eures Masters und eurer Slaves ermöglichen? Mit dem Plugin Disk Usage behaltet ihr euren Speicherplatz im Blick, während das Plugin Monitoring auf einer eigenen Monitoring-Seite eine ganze Reihe interessanter Metriken überwacht.
Verschachtelte Ansichten
Plugin:Nested View
Wenn ihr eure Jobs in separaten Ansichten organisiert, bleibt eure Jenkins-Instanz übersichtlich. Größere Jenkins-Instanzen werden jedoch schnell von Dutzenden Ansichten überflutet. Standard-Jenkins erlaubt leider keine Gruppierung von Ansichten, doch hier kommt das Nested View Plugin ins Spiel. Damit könnt ihr relevante Ansichten unter einer übergeordneten Ansicht gruppieren und übersichtliche Ansichtsstrukturen erstellen.
Sicher neu starten
Plugin:SafeRestart
Jenkins muss hin und wieder neu gestartet werden, häufig bei der Installation oder Aktualisierung von Plugins. Mit diesem Plugin könnt ihr neue Jobs pausieren und den Server neu starten, sobald eure laufenden Jobs abgeschlossen sind. Den Neustart könnt ihr sowohl auf der Jenkins-Konfigurationsseite als auch im Haupt-Dashboard planen.
Grüne Kugeln
Plugin: Green Balls
Jenkins verwendet blaue Kugeln, um erfolgreiche Builds zu kennzeichnen – aus gutem Grund. Dennoch bevorzugen genug Nutzer grüne Kugeln, sodass dieses Plugin, das die Kugelfarbe ändert, zu den beliebtesten Plugins überhaupt gehört.
Pipeline-Plugins
Build-Pipelines
Plugin:Build Pipeline
Das Build Pipeline Plugin visualisiert eure vor- und nachgelagerten, verbundenen Jobs in einer ansprechenden Ansicht und verschafft euch einen guten Überblick über euren gesamten Build-Prozess. Außerdem könnt ihr praktische manuelle Trigger zu euren Jobs hinzufügen. So könnt ihr externe Prozesse, etwa eine Prüfung vor dem Deployment, in eure Pipeline integrieren.
Build-Badges und Promotions
Plugins:Promoted Builds, Build Trigger Badge
Promotet eure Builds im Verlauf der Pipeline und verseht sie mit aussagekräftigen Badges. Das Build Trigger Badge Plugin ergänzt eure Builds um ein kleines Badge, das den Auslöser des Builds zeigt. Wurde er manuell ausgelöst, durch eine SCM-Änderung oder von einem vorgelagerten Job?
Mit dem Promoted Builds Plugin könnt ihr noch einen Schritt weitergehen und eure Builds entlang der gesamten Pipeline promoten und kennzeichnen. Bei jedem weiteren Schritt könnt ihr euren Build mit einem Badge versehen, das seinen Erfolg zeigt. Ein Blick auf einen Build genügt, um zu erkennen, wodurch er ursprünglich gestartet wurde und wie gut er in der weiteren Pipeline abgeschnitten hat. Kreative Nutzer können Jobs auslösen, sobald bestimmte Promotion-Stufen erreicht sind.
Ein besseres Dashboard erstellen
Plugins:Build Monitor, Dashboard View, Radiator View
Stellt euer Wunsch-Dashboard zusammen und zeigt den Status eurer wichtigsten Jobs auf dem großen Monitor neben der Kaffeemaschine an. Genießt euren Kaffee stolz im grünen Schein eures Dashboards – oder eilt zurück an euren Schreibtisch, um stattdessen den letzten Commit zu reparieren. Sammelt und zeigt interessante Statistiken zu euren Builds auf einem anderen Dashboard an, um anfällige Bereiche eures Build-Prozesses zu erkennen und Probleme gezielt aufzuspüren.
Job-Plugins
Jobs als Code
Plugin:Job DSL
Die Konfiguration eurer Jobs und Pipelines als Code zu speichern, bietet zahlreiche Vorteile. Ihr könnt eure Konfiguration versionieren, eure Jobs bei Bedarf neu generieren, neue Jenkins-Instanzen im Handumdrehen bereitstellen und konfigurieren und vieles mehr. Die Jenkins Job DSL ist eine beliebte und außergewöhnlich gut dokumentierte Groovy DSL, mit der ihr Pipelines und Jobs über Skripte konfigurieren könnt. Wenn ihr euch damit beschäftigt, eröffnen sich euch zweifellos neue Möglichkeiten.
Job-Skripting und Parametrisierung
Plugins:EnvInject, Environment Script
Reduziert Redundanzen und erhöht die Wiederverwendbarkeit eurer Jobs, indem ihr ihre Variablenwerte parametrisiert. Mit den Plugins EnvInject und Environment Script könnt ihr die erforderlichen Werte in eure Jobs einfügen. Sie sind überraschend flexibel und helfen euch dabei, generische Jobs zu erstellen. Und noch ein Vorteil: Sobald eure Jobs parametrisiert sind, könnt ihr sie mit Job DSL ganz einfach in übersichtliche Skripte umwandeln.
Analyse, Analyse, Analyse
Eine gute Build-Pipeline erfasst eine Vielzahl interessanter Metriken zu eurem Code – eine noch bessere Pipeline definiert dafür Warnungen und Schwellenwerte. Im Folgenden findet ihr einige Plugins, die euch bei der Analyse helfen und Schwachstellen in eurem Code aufzeigen.
Compiler-Warnungen
Plugin:Warnings
Behaltet die Compiler-Warnungen im Blick, die in euren Builds auftreten – sie sind ein guter Indikator für mögliche Probleme im Code. Keine Panik, wenn euer erster Build Hunderte von Problemen meldet: Trends sind wichtiger als absolute Werte. Mit Sorgfalt könnt ihr diese Zahlen kontinuierlich senken und euch darauf verlassen, dass der Code mit jedem Commit ein Stück besser wird.
Testergebnisse und Testabdeckung
Plugins:xunit, junit, nunit, Test Results Analyzer
Fasst eure Testergebnisse zusammen und stellt sie in hilfreichen Diagrammen und Statistiken dar. (Ihr habt doch Tests, oder?) Erkennt fragile Tests und investiert Zeit, um sie – oder den von ihnen getesteten Code – robuster zu machen. Behaltet den Trend eurer Testabdeckung im Blick und fordert euch selbst heraus, diesen Prozentsatz mit jedem Commit zu erhöhen.
Aufgabensuche
Plugin:Task Scanner
Erinnert ihr euch an das //TODO, das ihr letzten Freitag hinterlassen habt? Oder an die @deprecated-Methode, die ihr noch im gesamten Code ersetzen müsst? Wir wissen, dass ihr das irgendwann beheben werdet. Lasst diese Aufgaben aber nicht zu sehr anwachsen – mit dem Plugin Task Scanner behaltet ihr sie im Griff. Es bietet zahlreiche praktische Funktionen wie Trendberichte, Priorisierung und Schwellenwerte.
Verlauf der Job-Konfiguration
Plugin:JobConfigHistory
Praktisch, um nachzuvollziehen, welche Änderungen ihr – oder dieser Trottel Jim am anderen Ende des Raums – an euren Jenkins-Jobs vorgenommen habt. Das Plugin speichert bei jeder Änderung eine Kopie der Job-Konfiguration und ermöglicht so die Nachverfolgung von Änderungen, Diffs und die unkomplizierte Wiederherstellung von Konfigurationen.
Fazit
Ihr wollt Jenkins noch stärker anpassen? Durchsucht die Liste der verfügbaren Plugins im Jenkins-Plugin-Manager. Sucht, und ihr werdet finden!
Haben wir ein großartiges Plugin übersehen? Vielleicht sogar ein vielversprechendes Plugin, an dem ihr gerade arbeitet? Gebt uns Bescheid! Wir würden es gerne ausprobieren. Wenn es uns gefällt, landet es vielleicht sogar auf der Liste!
- CI/CD
Subscribe to our newsletter
Related blogs