Toolchain

Eine Toolchain ist eine miteinander verknüpfte Sammlung von Tools, die Prozesse automatisiert, indem die einzelnen Werkzeuge zusammenarbeiten. In der Softwareentwicklung wird sie eingesetzt um den Automatisierungsgrad zu erhöhen und so die Qualität und Effizienz zu steigern.

Automatisieren von Prozessen

Das Automatisieren von Prozessen hat zwei Vorteile. Erstens werden Fehlerquellen durch das Minimieren von manuellen Arbeitsschritten reduziert. Zweitens steigt die Effizienz, da automatisierte Arbeitsschritte keine Arbeitszeit benötigen. Der Nachteil vom Automatisieren ist, dass das initiale Setup sehr aufwändig sein kann. Es ist daher wichtig abzuwägen, welche Schritte automatisiert werden sollen.

Toolchains für CI/CD oder DevOps

Abhängig von den eingesetzten Tools bieten sich unterschiedlichste Möglichkeiten zum Automatisieren von Prozessen. Continuous Integration, Continuous Deployment oder DevOps erfordern mindestens diese Tools:

  • Source Code Management: Ein Tool zum Verwalten von Source Code in Repositories, wie z.B. der SCM-Manager.
  • Build Server: Ein Tool zum Durchführen von Builds, z.B. Jenkins.
  • Artefakt Repository: Ein Tool zum Speichern von binären Artefakten, z.B. Nexus Repository.
  • Issue Tracking und Projekt Management: Tools zum Verwalten von Issue Tickets und zum Projektmanagement, z.B. Redmine.
  • Knowledge Management: Tools zum Verwalten von Informationen und Wissen, zum Beispiel in Form eines Wikis wie Smeagol.

Zusammenstellen von Toolchains

Das Zusammenstellen einer Toolchain ist eine Gratwanderung zwischen Aufwand und Nutzen, da jedes Tool Zeit für Installation, Konfiguration und Betrieb benötigt. Eine Alternative zum manuellen Aufsetzen einer Toolchain sind „out-of-the-box“ Toolchains, die das Installieren und das Betreiben von Tools deutlich vereinfachen. Ein leistungsstarkes Beispiel dafür ist das Cloudogu EcoSystem.

Cloudogu EcoSystem Toolchain

Das Cloudogu EcoSystem (CES) ist eine Toolchain für Softwareentwickler, die alle Phasen des Lebenszyklus der Softwareentwicklung abdeckt.

Lebenszyklus der Softwareentwicklung

Das Besondere am CES ist, dass es eine fertig zusammengestellte Toolchain aus eng miteinander verknüpften Open-Source-Tools ist. Beispiele für das CES in einer Continuous Delivery Pipeline finden Sie in diesen Artikeln:

Cloudogu EcoSystem Download

Jetzt Eco­System her­unter­la­den

Sie möchten das CES selbstständig aufsetzen? Kein Problem, wir stellen Ihnen die Community Edition als kostenfreien Download zur Verfügung.

CES herunterladen