Headerbild zu Automation mit Open Source

Automation mit Open Source

Mit Automatisierungstools Entwickler*innen entlasten, Zeit sparen und Qualität des Produktes erhöhen.Unverbindlich kontaktieren

Profitieren Sie von Automatisierungstools:

Softwareentwicklung kann oftmals durch repetitive Aufgaben wie die Verwaltung von Abhängigkeiten und Konfigurationen, dem Testen von Funktionalität und Sicherheit und dem Verteilen von Änderungen auf die Zielsysteme geprägt sein. Automatisierungstools schaffen Abhilfe.

Zeitersparnis

Aufgaben, die Entwickler*innen leisten müssen, werden von Automatisierungstools selbstständig übernommen. So kann in der Entwicklung viel Zeit gespart werden.

Erhöhte Qualität

Die Einhaltung von Codestyles und -standards werden unabhängig vom Entwickler*in geprüft und eingehalten. Dies erhöht die Qualität des Produktes enorm.

Wir greifen auf diese Open Source Automatisierungstools zurück:

Die unten aufgeführten Tools stehen an unterschiedlichen Punkten im Entwicklungsprozess und führen diverse Aufgaben aus. 

Ansible ist ein Open Source Automatisierungstool zur Konfiguration und Administration von Servern, um sich wiederholende Aufgaben zu automatisieren. Unabhängig, ob es sich um ein einzelnes System oder sehr viele handelt: Es ist als Open Source Software unter der GNU General Public License für DevOps auf der ganzen Welt verfügbar. Ansible zeichnet sich durch die folgenden Funktionen aus:

  • Agentlos 
  • Python
  • SSH 
  • Infrastructure as a code
  • Push-Architektur

Erfahren Sie in unserem Blogbeitrag, wie Sie mit Ansible Ihre Infrastruktur automatisieren können.

Jenkins ist der führende Open Source-Automatisierungsserver, der von zahlreichen Entwicklern, Testern, Designern und anderen Personen unterstützt wird, die an kontinuierlicher Integration und Bereitstellung sowie an modernen Softwarebereitstellungspraktiken interessiert sind. Basierend auf Java Virtual Machine (JVM) stellt er mehr als 1.500 Plugins bereit, die Jenkins für die Automatisierung mit praktisch jeder Technologie erweitern lässt, mit der Softwareentwicklungsteams arbeiten. Im Jahr 2019 übertrifft Jenkins 200.000 bekannte Installationen und ist damit der am weitesten verbreitete Automatisierungsserver.

Wir setzen Jenkins beim Kunden HOCHBAHN als Build und Deployment Server sowie für Performance-Tests auf Basis von Gatling ein.

Maven unterstützt Entwickler dabei, in kurzer Zeit einen Überblick über den Zustand und die Abhängigkeiten eines Java Projekts zu bekommen. Obwohl Entwickler weiterhin die grundlegenden Mechanismen des Projekts verstehen müssen, nimmt ihnen Maven die Verwaltung von vielen Details ab. Maven baut ein Projekt mithilfe seines Project Object Models (POM) und einer Reihe von Plugins. Wenn man einmal weiß, wie ein Maven Projekt funktioniert, kann man dieses Wissen auf alle Maven Projekte anwenden. Was in Summe viel Zeit spart.

Maven liefert nützliche Projektinformationen, die teilweise aus Ihrem POM entnommen und teilweise aus den Quellen Ihres Projektes generiert werden. Dies kann beispielsweise sein:

  • Änderungsprotokoll direkt aus der Quellenkontrolle erstellt
  • Quellen mit Querverweisen
  • Vom Projekt verwaltete Mailinglisten
  • Vom Projekt verwendete Abhängigkeiten
  • Unit-Testberichte einschließlich Abdeckung
  • Code-Analyse-Produkte von Drittanbietern stellen ebenfalls Maven-Plugins zur Verfügung, die ihre Berichte zu den von Maven gelieferten Standardinformationen hinzufügen

Maven zielt darauf ab, aktuelle Prinzipien für die Entwicklung von Best Practices zu sammeln und es einfach zu machen, ein Projekt in diese Richtung zu lenken. Zum Beispiel sind Spezifikation, Ausführung und Berichterstellung von Unit-Tests Teil des normalen Build-Zyklus mit Maven. 

Unsere Referenzen zu Automation