Inhaltsverzeichnis

ConfigUnits: Konfigurationseinheiten

Seit dem Release 7.04 stehen sog. ConfigUnits zur Verfügung, um Informationen über Versionen und Kombination von Anwendungen gebündelt zu beschreiben.

Übersicht

Im Abschnitt „ConfigUnits“ der TAA-Registry können voreingestellte Kombinationen van Anwendungsversionen abgelegt werden. Diese ConfigUnits können dann herangezogen werden, um (technische) GeVos mit bestimmten Versionen von bestimmten Anwendungen auszuführen.

Die Kommandozeilenoptionen von taa32go und fledge wurden zur Benutzung von ConfigUnits erweitert. Solange keine ConfigUnit angegeben wird, werden die aktuellen Einstellungen der einzelnen Anwendungen benutzt.

Auch bei der Erstellung von Requests werden ConfigUnits anstelle von Auflistungen einzelner Anwendungen und zugehöriger Versionen benutzt. Dazu wird die zu nutzende ConfigUnit aus der Registry ausgelesen oder aus Angaben der startenden Anwendung abgeleitet.

Eine ConfigUnit wird durch einen (maximal zwölfstelligen) Namen identifiziert. Unter diesem Namen wird ein Eintrag im Abschnitt ConfigUnits der TAA-Registry erstellt. Zur Erstellung einer solchen ConfigUnit bietet IEdge einen neuen Befehl.

Inhalt einer ConfigUnit

Der einzelne Eintrag in dem Registry-Abschnitt ConfigUnits besteht aus einem komprimierten Binärwert. In diesem Binärwert ist eine Auflistung von Anwendungen abgelegt, und zu jeder Anwendung

So kann bspw. in einer ConfigUnit die Anwendung ZENTKO aufgelistet sein mit dazu der Versionsangabe 023, dem Anwendungskürzel ZK und dem Firmenkürzel AL. In neueren Versionen von ConfigUnits können durchaus weitere Angaben zur Anwendungskontext gespeichert werden.

Ermittlung der ConfigUnit zu einer Anwendung

Wenn zu einer bestimmten Anwendung der Name einer ConfigUnits abgeleitet werden soll, so geht die Infrastruktur wie nachfolgend beschrieben vor:

Zunächst wird überprüft, ob es zu dieser Anwendung einen Eintrag CurrentCfg in der Registry gibt, bspw.

[HKEY_LOCAL_MACHINE\SOFTWARE\TAA\Appl\Privat] „CurrentCfg“=„myCfg_001“

Falls ein solcher Eintrag nicht vorhanden ist, wird ein Eintrag CurrentCfg im allgemeinen Config-Abschnitt gesucht. Falls auch dieser nicht gesetzt ist, wird die ConfigUnit aus dem Kürzel der Anwendung, gefolgt von einem Underscore und der Version der Anwendung konstruiert, bspw. „SN_021“.

ConfigUnit beim Starten eines (technischen) GeVos

Durch die Angabe „-cfg“ bei taa32go oder fledge kann beim Start eines (technischen) GeVos eine in der Registry voreingestellte ConfigUnit spezifiziert werden, die dann, abweichend von den sonstigen Registry-Einstellungen, die zu nutzenden Anwendungskontexte vorgibt. Beispiel:

  taa32go test hg-test udef -e0 -cfg sn_021 -w2

Sollte keine ConfigUnit explizit angegeben sein, so wird eine ConfigUnit ermittelt aus der Anwendung des startenden Bausteins. Falls diese ConfigUnit auch in der Tat im ConfigUnits-Abschnitt eingetragen ist, so wird mit dieser ConfigUnit operiert, ansonsten ohne ConfigUnit, also mit den aktuellen Einstellungen.

Die bei einem (technischen) GeVo benutzte ConfigUnit wird als Eigenschaft zum GeVo aufbewahrt und bei Bedarf weiter berücksichtigt.

Ermittlung der ConfigUnit beim Einstellen eines Requests

In den Daten eines Requests werden, im Gegensatz zum Verfahren bei der Erstellung anderer Kontextdaten, mit Rücksicht auf die auf dem Host verfügbaren Informationen, keine Auflistungen der benutzten Anwendungen und dazu gehörigen weiteren Angaben, wie Versionen, aufgenommen. Stattdessen wird in den Daten eines Requests nur die ConfigUnit gespeichert. Die Angabe zur ConfigUnit wird zunächst aus den Eigenschaften des den Request erstellenden GeVos abgeleitet. Sollte hier keine ConfigUnit vorliegen, so wird die ConfigUnit aus Einstellungen zum Anwendungssystem des per Request zu startenden Bausteins abgeleitet.

Erstellung einer ConfigUnit

Das Werkzeug IEdge bietet die Möglichkeit, die aktuellen Anwendungseinstellungen als ConfigUnit zu sichern. Dazu wird IEdge mit dem Befehl SaveCfg aufgerufen, unter Angabe des gewünschten Namens für die zu erstellende ConfigUnit. Beispiel:

  iedge savecfg sn_023

Zu beachten ist dabei, dass, sollte der Schlüssel ConfigUnits durch IEdge noch angelegt werden müssen, dies an der ersten beschreibbaren Stelle in der TAA-Registry geschieht. Dadurch ist es möglich, dass der Schlüssel ConfigUnits umgebungsspezifisch, also bspw. unter Env\ALREWT, angelegt wird, was normalerweise nicht wünschenswert wäre. Um sicherzustellen, dass die ConfigUnits an der richtigen Stelle landen, sollte also vorher der Schlüssel ConfigUnits angelegt worden sein, und ggf. vorhandene umgebungsspezifische Schlüssel entweder entfernt oder mit Schreibschutz versehen werden.

Wenn die gleichen Anwendungseinstellungen unter unterschiedlichen Namen als ConfigUnit angelegt werden sollen, kann dies auch durch Kopieren und Umbenennen der ConfigUnit geschehen. Die Infrastruktur wird bei Zugriff auf eine solche Kopie feststellen, dass die Namensgebung nicht mit dem ursprünglichen Namen zusammenpasst, und wird die ConfigUnit dann dementsprechend anpassen, aber akzeptieren.

Sichtbarkeit einer ConfigUnit

Wenn ein (technischer) GeVo unter Berücksichtigung einer ConfigUnit läuft, ist dies im TAA-Explorer, resp. Contextbrowser dadurch zu erkennen, dass zum GeVo eine Eigenschaft $cfgUnit mit dem Namen der ConfigUnit geführt wird.