Der Softwerker

Das Magazin Vol. 19

Worum geht es in der Ausgabe?

Automatisierung ist in heutigen IT-Landschaften eine absolute Selbstverständlichkeit – so würde man meinen. Die Realität sieht ganz anders aus: In vermeintlich modernen IT-Abteilungen findet man von manuell aufgesetzter Infrastruktur und Servern bis hin zu manuellen Builds, Tests und Deployments so ziemlich alle Anti-Patterns aus dem Automatisierungshandbuch. Grund genug, diesem wichtigen Thema eine Ausgabe zu widmen.

Von GitLab CI und GitLab Auto DevOps über Tekton, Infrastruktur-Provisionierung und API-Deployments bis hin zur Machine-Learning-Pipeline- und Testautomatisierung führt unsere Reise durch mehrere Bereich der Softwareentwicklung, in denen Automatisierung heute unverzichtbar ist. Wem das alles noch nicht spannend genug ist, findet in einem weiteren InfoSec-Krimi am Ende der Ausgabe unterhaltsam-informative Zerstreuung.

Vorwort des Softwerker Magazins Vol 19
Softwerker Redaktuerin Lisa Posch

Liebe Leserinnen, liebe Leser,

während in Villarriba schon gefeiert wird, wird in Villabajo noch händisch deployt. Was machen die Bewohner des ersten Dorfes richtig? Sie haben Uwe Friedrichsens Leitartikel „Warum Automatisierung?“ in dieser Ausgabe schon gelesen. Darin geht er auf die Ausreden von Villabajos Bevölkerung ein, die sich davor scheuen, Automatisierung eine Chance zu geben – während Villarriba schon eingesehen hat, dass Automatisierung kurzfristig Kosten und Mühe bedeuten kann, sich aber langfristig auszahlt.

„Automatisierung für Fortgeschrittene“ ist der Schwerpunkt dieser Ausgabe.

Marco Emrich erkundet die testgetriebene Entwicklung nach der Münchner Schule und erklärt, wie sie die Fehlerdichte signifikant reduzieren und Softwaredesign verbessern kann. Timo Böhm findet heraus, warum eine einzelne Deployment-Pipeline für Infrastructure as Code nicht genug ist – und spricht sich dafür aus, mithilfe von Artefakt-Buffern zu sicherer Infrastruktur-Provisionierung zu gelangen. So findet ihr in dieser Ausgabe wie gewohnt zahlreiche handfeste Tipps und Tricks, die euch den Arbeitsalltag erleichtern – und lasst euch, so hoffen wir, Mut zu mehr Automatisierung machen.

Lisa-signature

Inhalt

uwe-friedrichsen1-250x250

Uwe Friedrichsen

Warum Automatisierung?

Neun Gründe, weshalb sie in der heutigen IT ein Muss ist

Der Schwerpunkt dieses Softwerkers ist „Automatisierung für Fortgeschrittene“. Die implizite Annahme bei so einem Schwerpunkt ist, dass das Thema Automatisierung an sich keiner weiteren Erläuterung mehr bedarf, dass der Wert von Automatisierung klar ist. Schaut man sich aber in den IT-Abteilungen ganz vieler Unternehmen um, scheint an der Stelle nicht viel klar zu sein. Da findet man so ziemlich alle Anti-Patterns aus dem Automatisierungshandbuch. Dieser Artikel erklärt, warum Automatisierung in der IT heute nicht mehr optional ist.

 

 



jonas_hecht-1

Jonas Hecht

Es geht auch ohne Docker

Cloud-Native Buildpacks in GitLab CI auf Kubernetes-Basis

Die Nutzung der Cloud-Native Buildpacks bringt enorme Vorteile für die Arbeit mit Containern mit sich. Allerdings baut das Kommandozeilenwerkzeug pack der Buildpack-Implementierung Paketo auf Docker auf. Sind Buildpacks dann überhaupt innerhalb Kubernetes-basierter CI-Systeme nutzbar, in denen überhaupt kein Docker-Daemon zur Verfügung steht? Dieser Frage geht Jonas Hecht nach.

Christoph Walter

Christoph Walter

Beyond GitLab Auto DevOps

Wie man schnell startet und trotzdem immer weiter kommt

Ein modernes Softwareprojekt ohne CI/CD ist kaum noch denkbar. Doch wie startet man schnell, ohne viel Zeit in dessen Konfiguration zu verlieren? Und was tut man, wenn dieser Ansatz plötzlich nicht mehr ausreicht? Hinter GitLab Auto DevOps steckt eine Sammlung von Werkzeugen, die den Softwareentwicklungsprozess unterstützen. Durch eine automatische Erkennung der Programmiersprache wird die Anwendung gebaut und passende Tests werden ausgeführt.

marco_paga

Marco Paga

Wer testet eigentlich die CI?

Ein Beispiel mit Tekton und GitHub Actions

In der Softwareentwicklung gehört es zum guten Ton, für den produktiven Code Tests zu schreiben. Wir sehen den Wert bei der täglichen Arbeit an vielen Stellen, wenn es darum geht, die Software weiterzuentwickeln. Doch die CI-Systeme, obwohl diese das Sicherheitsnetz erst für ganze Teams möglich machen, sind von dem Prinzip oft weit entfernt. Build und Testkonfigurationen werden allzu oft ohne Netz und doppelten Boden entwickelt und genutzt. Der Artikel beschreibt den Aufbau eines getesteten CI-Systems am Beispiel von Tekton mit GitHub Actions.

magnus_felix

Felix Magnus

CI/CD für Komponentenbibliotheken

GitLab-CI/CD-Pipeline mit automatischem Versionsmanagement und Hosting von Dokumentation

Dieser Artikel bietet einen Überblick über die Vorteile von CI/CD bei der Entwicklung von Komponentenbibliotheken sowie eine Anleitung zum Aufsetzen einer GitLab-Pipeline mit automatischem Versionsmanagement und Hosting von Dokumentation. Die Anleitung ist vollständig im GitLab Free Tier umsetzbar und dient zur exemplarischen Veranschaulichung der Konzepte.

Timo.Boehm

Timo Böhm

Sichere Infrastruktur-Provisionierung durch Artefakt-Buffer

Warum eine einzelne Deployment-Pipeline für Infrastructure as Code nicht genug ist

Cloud-Infrastruktur erhöht die Geschwindigkeit der Provisionierung massiv. Gleichzeitig entstehen damit aber auch neue Sicherheitsrisiken. Dieser Artikel zeigt auf, wie sich das Risiko verringern lässt, ohne Einbußen bei der Geschwindigkeit in Kauf nehmen zu müssen.

Marco Emrich 700x700px

Marco Emrich

Mehr Zeit im Grünen

Testgetriebene Entwicklung nach der
Münchner Schule

TDD blickt auf eine lange Geschichte zurück. Richtig angewendet reduziert TDD die Fehlerdichte signifikant, ohne dabei Produktivitätsverluste in Kauf nehmen zu müssen. Vor allem hilft TDD, Softwaredesign zu verbessern. Im Vergleich zur bekannten Londoner Schule bietet die Münchner Schule einen Ansatz, der ganz ohne Mocks auskommt. Eine Einführung.

Matthias_Niehoff_700x700px

Matthias Niehoff

Mehrwerte schaffen statt ständiger Troubleshootings

Daten- und ML-Pipelines auf Databricks
implementieren und automatisieren

Pipelines sind die Achillesferse eines jeden Datenprodukts und -projekts. Funktionieren sie, denkt niemand über sie nach. Wenn sie aber instabil sind oder falsche Daten liefern, ist die Aufmerksamkeit groß. Fehlende Automatisierung und Struktur sind häufige Ursachen. Höchste Zeit, sich eine mögliche Lösung anzuschauen.

Daniel_Kocot_700x700px-1

Daniel Kocot

Von der Spezifikation zur Infrastruktur

Automatisierte API-Deployments

Das Deployment eines APIs in die verschiedenen Stadien einer Softwareentwicklungspipeline umfasst nicht nur den Aspekt des Schreibens (Design) einer APISpezifikation, sondern auch das Vorhandensein bzw. gleichzeitige Bereitstellen einer entsprechenden Infrastruktur. Dieser Artikel beschreibt mögliche Ideen und Schritte eines möglichen Deployment-Prozesses, ausgehend vom Design einer API-Spezifikation.

andreas_houben

Andreas Houben

Augen zu und durch

Wie barrierefreie Webseiten mit testing-library und ARIA für stabilere Test-Automatisierung sorgen

Automatisierte Tests sind Standard im Werkzeugkasten eines jeden Entwicklers. Wieso sollte das nun ein Thema für fortgeschrittene Automatisierung sein? Im Frontend-Bereich hat sich in den letzten Jahren viel bewegt – auch im automatisierten Testen. Das Framework „testing-library“ sticht ganz besonders hervor, weil es einen neuartigen Ansatz verfolgt, um Webseiten automatisch zu bedienen. Das erleichtert das Testen – und ganz beiläufig werden die damit getesteten Webseiten barrierefrei.

Marcel_Kassuhn_700x700px

Marcel Kassuhn

„Ein Happy Meal, bitte!“

Forensik-Einsätze warten immer wieder mit Überraschungen auf

Wenn man als IT-Security-Berater auch Incident-Response-Einsätze und digitale Forensiken durchführt, erlebt man mit den Jahren so einiges. Bei manchen Forensiken handelt es sich um den Klassiker, bei dem das Unternehmen verschlüsselt wurde und die Arbeitsfähigkeit des Unternehmens schnellstmöglichst wiederhergestellt werden muss. Bei anderen wiederum denkt man sich: „Macht daraus ein Drehbuch, und wir haben den nächsten Hollywood-Streifen.“

Jetzt den Softwerker Vol. 19 downloaden