oktoflow Release 0.8.1
Die neue stabile Version von oktoflow ist fertig und seit 15.09.2026 damit auch das nächste Release für die ReGaP-Community.
Gibt es neue Funktionalität?
Ja, es gibt vieles Neues aber auch diverse Verbesserungen:
- Schnellere Build-Prozesse: Build-Prozesse sind verantwortlich für das systematische Erstellen, Testen und Verpacken von Software-Komponenten. In oktoflow, hat jede der über 80 Plattformkomponenten einen angepassten Build-Prozess, die oktoflow-Applikationen werden von generierten Build-Prozessen erstellt. Beide Arten von Build-Prozessen bilden die Grundlage für die kontinuierliche Integration, d.h., das automatisierte Ausführen dieser Prozesse wenn wir Plattformkomponenten für euch anpassen. Da die App-Build-Prozesse auf euren Rechnern laufen, hat die Geschwindigkeit der Build-Prozesse auch direkten Einfluss auf eure Arbeit. Durch Überarbeitung der Generierung der App-Build-Prozesse konnten wir auf Windows 39% und auf Linux 22% der Ausführungszeit einsparen, wobei Build-Prozesse unter Linux um den Faktor 3 schneller laufen als unter Windows. Durch die Beschaffung und Installation des neuen ReGaP-Servers an der Universität Hildesheim sowie der Migration der Build-Prozesse auf diesen Server konnten wir insgesamt mehr als 50% der Build-Zeit für alle Plattformkomponenten einsparen, d.h., ein kompletter Plattform-Build mit allen Tests und Deployments benötigt jetzt nur noch knapp zwei Stunden. Zudem haben wir für oktoflow-Apps die erste Version inkrementeller Builds freigeschaltet. Dabei erfordern Änderungen an Java- oder Python-Services einer App nicht mehr einen kompletten Build, da die App, wie bei Web-Frameworks üblich, einfach weiterläuft und die Änderungen zur Laufzeit nachlädt. Dies ermöglicht in ersten Versuchen Build-Zeiten von unter 10 Sekunden.
- Superschneller inkrementeller Build: Zudem haben wir für oktoflow-Apps die erste Version inkrementeller Builds freigeschaltet. Dabei erfordern Änderungen an Java- oder Python-Services einer App nicht mehr einen kompletten Build, da die App, wie bei Web-Frameworks üblich, einfach weiterläuft und die Änderungen zur Laufzeit nachlädt. Dies ermöglicht in ersten Versuchen Build-Zeiten von unter 10 Sekunden.
- Schneller und einfacher Ergebnisse visualisieren: Dieses Update betrifft die Integration von oktoflow2Grafana in die Plattform-Build-Prozesse. Das aus oktoflow-Apps automatisiert abgeleitete Dashboarding wurde gemeinsam mit dem Community-Mitglied Bitmotec für Version 0.8.0 entwickelt und eingeführt. Allerdings mussten die hierfür notwendigen Generierungsschritte noch händisch ausgeführt werden. Seit Version 0.8.1 werden die erforderlichen Schritte für Apps die ein Dashboarding definieren automatisiert als Teil der App-Build-Prozesse ausgeführt. Also schneller und einfacher zum Projekt inklusive Visualisierung.
- Einfacheres Bauen und Verwalten der Apps: Hierbei handelt es sich um eine Überarbeitung und Verbesserung des Management-UI. Die webbasierte Management-Oberfläche von oktoflow erlaubt es, Apps zu modellieren und App-Build-Prozesse auszuführen, ohne selbst das darunterliegende Modell anzufassen. ReGaP-Community-Projekte wählen in letzter Zeit häufiger diesen Weg der App-Entwicklung und teilen Ihre Erfahrungen und ihre Verbesserungswünsche. Daher konnten wir insbesondere Anwendbarkeit, Arbeitsabläufe, Durchgängigkeit und Konsistenz aber auch die Bereitstellung kontinuierlicher Informationen bei länger laufenden Prozessen wie App-Builds deutlich verbessern.
- Mehr Auswahl beim Datentransport: Bislang war JSON das Format für den Datentransport zwischen Konnektoren und Services in der Plattform. Version 0.8.1 führt nun die automatisierte Generierung von App-Code für das binäre (proprietäre) Protobuf-Format sowie für XML ein um Integration in Bestandssysteme aber auch Beschleunigung von Datenflüssen zu ermöglichen.
- Höhere Sicherheit im Entwicklungscontainer: Der oktoflow Entwicklungscontainer ermöglicht die Entwicklung von oktoflow Apps ohne die Plattform selbst zu installieren. Dazu enthält der Linux-basierte Docker-Container neben einer installierten Plattform auch mehrere Integrierte Entwicklungsumgebungen. Um demnächst lauffähige Online-oktoflow-Instanzen für die Community bereitstellen zu können, enthält der Entwicklungscontainer nun zusätzliche Sicherheitsmechanismen, insbesondere eine verbesserte Rechtevergabe für den Betrieb der Plattform im öffentlichen Raum. Dies ändert nichts an der bisherigen Nutzung, da die Sicherheitsmechanismen optional sind, d.h., beim Starten extra aktiviert werden müssen.
- OPC-UA Verbesserungen: Einerseits wurde der OPC-UA-Konnektor von oktoflow erweitert, um mit der Namenskonvention von SIMATIK-Geräten arbeiten zu können. Andererseits wurden erste Verbesserungen der automatisierten OPC-UA-nach-IVML-Transformation realisiert, insbesondere um OPC Companion Specifications 40001-4 [1] verarbeiten zu können. Diese Transformation ermöglicht es, Datenstrukturen der OPC-UA Companion-Specifications automatisiert ins Modellformat von oktoflow zu übersetzen und damit einfacher und sicherer konforme OPC UA Konnektoren zu erstellen. Weitere (Geschwindigkeits-)Verbesserungen sind in Arbeit.
- Migration zu neueren Software-Versionen: In diesem Release wurden erste Software-Komponenten, die der Plattformkern benötigt, erneuert.
Neben diesen großen Themen gab es auch noch weitere Anpassungen. Die Zusammenfassung finden Interessierte in der Release-Dokumentation.
Wie geht es weiter?
Wie beim letzten Release haben wir die Versionsnummer der Entwicklungsversion erhöht. Diese trägt nun die Versionsnummer 0.8.2-SNAPSHOT. Daraus ist schon abzuleiten, dass wir auch in der nächsten Version eher kleinere Verbesserungen anstelle von großen Umbrüchen planen. Angedacht sind:
- Erneuerungen der Build-Komponenten.
- Aktivierung der Plugins zwecks Upgrades verschiedenster technischer Abhängigkeiten (was leider nicht bereits in Version 0.8.1 möglich war). Ob dies auch zu einem Update von Java und Maven führen wird, können wir zurzeit noch nicht absehen.
- Verbesserung und Erweiterung des Management-UI für Deployment-Pläne, App-Templates, Service-Zustandsmaschinen.
- Umsetzung von Feedback und Wünschen der Community-Projekte.
- Weitere Verbesserungen der OPC-UA-nach-IVML-Transformation.
Das nächste Release planen wir ungefähr für März 2026.
Letztlich möchten wir uns noch ganz herzlich für die Beiträge der ReGaP-Community und der laufenden Community-Projekte Mobile-EPro und CORE zu diesem Release bedanken. Es wurden insbesondere Funktionsverbesserungen, Dokumentationsverbesserungen, Problembeschreibungen und Verbesserungsideen eingebracht, die oktoflow wesentlich nutzbarer gemacht haben. Zudem gab es viele Detail-Diskussionen und wir haben euch etwas „über die Schultern“ geschaut, um besser zu verstehen, wie ihr mit oktoflow arbeitet und was wir hierfür verbessern können, z.B., die Verbesserungen der Build-Prozesse.
Referenzen:
[1] OPC UA for Machinery – Part 4: Energy Management, https://reference.opcfoundation.org/specs/OPC-40001-4