Schnellster Server Umzug des Jahres

In nur wenigen Minuten ein WordPress von einem Docker System auf ein eigenes virtuelles Blog System gezogen und noch gleich die Zertifikate für angelegt. Das geht auch nur mit Glück so schnell. Nun herscht wieder ein Stück mehr Ordnung im Server Cluster.

Unit Testing für Architektur Vorgaben

Neben den Unit Tests für einzelne Methoden kann man auch generelle Vorgaben prüfen, welche die gesamte Architektur erfüllen muss. Dazu gibt es das ArchUnit Paket.

In meinem Demo Projekt habe ich das mal in aller Breite beispielhaft aufgebaut:

  • Requirements (in Testlink)
  • Logische Testcases (ebenfalls in Testlink)
  • Physische Testcases (im Java Maven Projekt)

Architecture Decision Records

Für die eigene Gedächtnisstütze, aber auch als Begründung für das Team und zukünftige Entwickler: Man sollte ein paar wesentliche Entscheidungen in ADR festhalten und begründen.

Passende Tools stehen dazu bereit und man kann es auch innerhalb eines Maven CI Workflows prima unterbringen. Mein Beispiel-Projekt kann dazu gerne herangezogen werden.

CI Tools die wo chatten tun

Was man nicht alles kombinieren kann:

Nun unterhält sich mein Ansible Tower mit einem ejabberd Chatraum und erzählt von seinen nächtlichen Update Eskapaden. Während der Jenkins bei Beginn und Ende seiner Pipeline inklusive passendem Avatar auch noch reinschwätzt.

Endlich schreibt mir mal jemand, auch wenn es nur die eigenen gerufenen Geister sind 🙂

Fingerabdrücke und Urlaubsfotos

Auch im Urlaub kommt der kleine Mann im Ohr nicht zur Ruhe und muß sich bei IT Fragen und Security immer einmischen.

Typische Situation: Ein nettes Pärchen fragt nach einem gemeinsamen Foto und hält ihr Smartphone hin. Keine Frage, man hilft gern und macht ein Bild.

Was aber wenn der Button zum Lesen der Fingerabdrücke mehr macht als nur ein Foto? Habe ich da eben meine biometrischen Merkmale abgegeben? Wer sagt denn der Scanner ist nicht gehackt und liest mein Profil dauerhaft ein.

Bei 33grad sieht es aber auch komisch aus, sollte ich erst Handschuhe anziehen und dann zum fremden Smartphone greifen.

Systemweites Einsammeln von Timeouts

Bei komplexen Systemen mit vielen Entwicklern wird es schwierig, wenn man effektiv nach Timeouts testen möchte. Ohne das Wissen wie lange manche Dinge gültig sind und später invalidiert werden, kann man nur im Nebel stochern. Auch wenn jeder für sich das irgendwo dokumentieren sollte, dann fehlt doch leider eine Gesamtübersicht.

Also bräuchte man einen globalen Zeitstrahl, der alle Timeouts auf einen Blick darstellt und dann kann man auch mal einen Langzeittest fahren, der

  • effektiv ist, weil er genau ein wenig länger ist als der letzte abgelaufene Timeout
  • komplett ist, weil er nicht einen noch längeren Timeout unwissentlich unterschlägt
  • nachvollziehbar ist, weil die Entscheidungsgrundlage für genau dieses Intervall dokumentiert ist

Labor online

Dank Powerline liegen nun etwa 180mbit im Kellern an. Genug um auch mal online was zu suchen und ein VoIP phone aufzustellen.

OpenJDK läuft

Zuerst war ich ja etwas kritisch, außerdem lief bei einer alten Version der maven download nicht mehr, da die Zertifikate fehlten.

Aber nun mit der aktuellen 8er und 11er Version vom OpenJDK klappt es vorzüglich und gefühlt kompiliert der ganze Stapel richtig schnell durch. Sämtliche Unittests sind grün, alles compiliert, nichts klemmt. Perfekt!

Automatisierte Softwareverteilung

Eigentlich ja eine tolle Sache. Firmenweit wird die Software verteilt und auf einem aktuellen Stand gehalten.
Wenn allerdings auch Löschwellen durch das Netz gejagt werden, ist Vorsicht angesagt. Oder man ignoriert einfach die unterschiedlichen Bedürfnisse zwischen Verwaltungs-PCs und Entwickler-PCs und löscht mal eben alle Browser und Java JDKs.
Danke dafür.

Planungen für das Labor

Der nächste Schritt zum e-Labor ist vollbracht: Die Ecke ist frei, Tisch bestellt. Zubehör und Geräte bereit. Ab nächstem Wochenende kann es dann mit dem Aufbau weiter gehen.