ProVers in 2023

  • Beitrags-Autor:
  • Beitrags-Kategorie:ProVers

Das Go-Programm ist fertig. Es kann die Informationen sammeln und veröffentlichen. CIF stellt mit ProversController einen Endpunkt bereit, der Json-Dateien entgegen nimmt und bei Änderungen für die Verarbeitung speichert. Der API-Key aus der Systemdefinition schützt und organisiert das Hochladen.

KW 2023/14: Komponenten + Analyse

Die Konfiguration im OVS wurde erweitert. Komponenten sind die kleinste Einheit, die vom Go-Programm gelesen werden und deren Version mit der Json-Datei übermittelt wird.

Produkte haben mindestens eine Komponente und können beliebig viele Komponenten aufnehmen.

Der Produktstatus wird bestimmt, indem alle Komponenten betrachtet werden. Im Status „aktuell“ müssen alle Komponenten aus der Json-Datei die Version vom OVS oder neuer haben. Ist eine Komponente veraltet, kommt es zum gleichnamigen Status. Fehlt eine Komponente in der Json-Datei, kommt es zum Produktstatus „fehlerhaft“.

KW 2023/15: Seite zeigt Analyseergebnis

Die Darstellung der ProVers-Ergebnisse folgt dem Aufbau für die manuell erfassten Daten. Die Seite „/fa/proVers_board.jsp“ nutzt wie die Vorgängerversion „/fa/proVers.jsp“ das ProVersBean, welches auf ProVersView verweist. Der aktuelle Werte „faForm.address“ entscheidet, ob die ProVers-Daten oder die manuellen Eingaben von ProVersService bereitgestellt werden.

ProVers Board

KW 2023/16: Sichtbarkeit im Internet

Das Groovy-Skript docs\ciforms_fa_proVers.groovy von CI.Forms kann die Daten von CIF zum lokalen Arbeitsplatz kopieren (OVS-Daten und Json-Datei). Das Skript liest per SSH-Tunnel den OVS vom CIF und spiegelt die Informationen in den lokalen OVS (es nutzt OvsPops und OvsTable, statt SQL-Befehle).

Mit CIF/OVS im Internet wird die ProVers-Konfiguration verwaltet. Komponenten und Produkte liegen dabei im geschützten Datenbankbereich (sie sind auf allen System identisch).

ProversJob nutzt ProversAnalyzer und speichert die aktuellen Status innerhalb der Umgebung. Der Job kann als SchedulerJob oder in der Kommandozeile mit ProversCli gestartet werden (bei CIF wird letzteres über „crontab“ genutzt).

CI.Forms 2.24.3 ist mit dem aktuellen Stand veröffentlicht.

Mehrere Systeme sind angebunden…

  • die Benennung der Umgebung folgt dem Muster ABC#TEST oder ABC#PROD
  • pro Umgebung eine Übermittlung (ProversController reagiert auf geänderte Dateien)
    • sekundäre Server bzw. Server ohne Internet sammeln mit provers -out abcd.txt Informationen in Datei
    • primäre bzw. sendende Server übermitteln Infos mit provers -in abcd.txt -merge -post https://cif.demo.de/provers an CIF
    • mit Windows-Aufgabenplanung und passenden Bat-Dateien wird Senden automatisiert
  • „letzter Empfang“ als Eigenschaft der Umgebung im OVS einsehbar (Differenz zum Zeitstempel im Dateinamen gibt Rückschluss auf unveränderte Tage)
  • Eigenschaft „Datenübernahme“ von der Umgebung benennt letzte Produktstatus-Aktualisierung

nächste Schritte: Klick auf Status zeigt Details, Produkte definieren, System anbinden

Optimierung 1: Bean/View/Service nutzen Werte im OVS bereitgestellten Status, statt ProversAnalyzer (beschleunigt Anzeige)

Optimierung 2: Job nutzt „Datenübernahme“ und „letzter Empfang“ (Berechnung Status nur nötig, wenn neue Json-Datei vorliegt)