Zum Inhalt

Admin.migrationshinweise

In diesem Kapitel erhalten Sie wichtige Hinweise für die Migration von einer imperia-Version zum nächst höheren (Major-)Release.

Im Gegensatz zum Installationshandbuch, wo Sie Anleitungen zur allgemeinen Vorbereitung und Durchführung einer Migration bzw. zur Erst-Installation erhalten, finden Sie hier konkrete Hinweise zu den einzelnen Versionen auf diese Sie migrieren bzw. upgraden möchten.

Generell unterstützen wir im Support die aktuelle Version der letzten 2 Major-Releases. Bsp.: "End-of-Lifetime" für imperia 10 ist demnach erst bei Erscheinen von imperia 12.


Zusammenfassung

Update Update-Hinweise, die ab dieser Version gültig sind.
Update von i10.2.3 auf i10.2.4 Mit imperia 10.2.4 verfügt das Skript perl site_rebuild_db.pl -m -t -b nun über weitere Parameter (-m für "Minimaler Neuaufbau").

Lesen Sie dazu auch im Admin-Handbuch site_rebuild_db.pl.

Volltextsuche ignoriert Base64 enkodierte, interne Daten. Optional deaktivierbar mit der Index.conf-Variable: keepbase64content
Update von i10.2.1 auf i10.2.2 Mit der Version 10.2.2 gab es Änderungen in der Datenbank. Nach dem Update müssen Sie diese mit site_doctree_admin.pl -U neu aufbauen.
Dies erfolgt in Ihrem System unter ./imperia.de/site/bin/site_doctree_admin.pl -U.
Update von i10.2.0 auf i10.2.1 Aktualisieren Sie – falls möglich – Ihre SQLite auf eine Version >3.8.3. Sie verbessern damit u.a. die Suchergebnisse im Dokumenten-Browser.
Update von i10.1 auf i10.2 Mit einem Update auf i10.2 ist eine Hermes.conf Pflicht.
Wichtig: Das Skript wird beim Update/bei einer Erstinstallation NICHT automatisch ausgeführt.

Um sicherzustellen, dass diese auch generiert wird, führen Sie folgende Schritte durch:

1. Führen Sie das Skript site/bin/site_hermes_plugins_list.pl aus:
Windows: C:\Strawberry\perl\bin\perl.exe C:/imp/projects/926/webs/dev/site_hermes_plugins_list.pl -g -q -i Monitor\|Analyzer
UNIX: perl /imp/projects/926/webs/dev/site/bin/site_hermes_plugins_list.pl -g -q -i Monitor\|Analyzer
Bitte beachten
Der Backslash muss vorangestellt werden, damit die Shell das Symbol | nicht als Pipe interpretiert.
Dieses Skript erzeugt nicht mehrere parallele Hermes-Worker, sondern nur eine Instanz mit ALLEN Plug-ins.

2. Kopieren Sie den Output der Liste manuell in die site/config/hermes.conf.sample:
perl site/bin/site_hermes_plugins_list.pl > site/config/hermes.conf.sample

3. Ändern Sie hermes.conf.sample zu hermes.conf ab.

Bitte beachten
Folgende Hinweise sind für die Weiterarbeit mit den Plug-ins relevant:
Das Aufteilen der Hermes-Worker ist nicht ganz trivial - zumindest nicht in allen Fällen! Lesen Sie daher auch die generelle Dokumentation unter: site/config/hermes.conf.sample
Die Anwendung des Hermes-Dienstes wird im Admin-Handbuch ausführlichst beschrieben.
Update von 10.0.0 auf 10.0.3 Bei Updates von imperia 10.0.0-10.0.3 müssen Sie unter Umständen die Datenbank neu aufbauen (mit site_doctree_admin.pl -U), falls es bei Ihnen Probleme mit der Reihenfolge der Master- und Copyseiten im Dokumenten-Browser gibt oder es zu Berechtigungsproblemen kommt.
___

Version 10.2.3#

  • In 10.2.2 und 10.2.3 gab es Änderungen in der Datenbank. Nach dem Update müssen Sie diese mit site_doctree_admin.pl -U neu aufbauen.
    Dies erfolgt in Ihrem System unter ./imperia.de/site/bin/site_doctree_admin.pl -U.

  • Volltextsuche ignoriert Base64 enkodierte, interne Daten. Optional deaktivierbar mit der Index.conf-Variable: keepbase64content

Version 10.2.2#

In 10.2.2 und 10.2.3 gab es Änderungen in der Datenbank. Nach dem Update müssen Sie diese mit site_doctree_admin.pl -U neu aufbauen. Dies erfolgt in Ihrem System unter ./imperia.de/site/bin/site_doctree_admin.pl -U.

Version 10.2.1#

Aktualisieren Sie – falls möglich – Ihre SQLite auf eine Version >3.8.3. Sie verbessern damit u.a. die Suchergebnisse im Dokumenten-Browser.

Version 10.2#

Mit einem Update auf i10.2 ist eine Hermes.conf Pflicht.

Um sicherzustellen, dass diese auch generiert wird, führen Sie folgende Schritte durch:

Version 10.1.3#

Keine besonderen Hinweise vorhanden.

Version 10.1.2#

Keine besonderen Hinweise vorhanden.

Version 10.1.1#

Keine besonderen Hinweise vorhanden.

Version 10.1.0#

Migration von 10.0.x auf 10.1#

Die Migration von 10.0.4 auf imperia 10.1 unterscheidet sich nicht von einem Update. Sie stoppen die Hermesdienste, führen das Perlskript install.pl auf Ihre imperia-Instanzen aus und starten anschließend den Webserver neu.

Migration von 9.2.x auf 10.1#

Wie bei jedem neuen Major-Release, erfordert ein Upgrade auf imperia 10.1 eine Migration des Datenkbankschemas. Andere Daten müssen nicht migriert werden, sofern Sie von der neuesten Version von imperia 9 kommen.
Ein direktes Upgrade von Imperia 8.6 kann evtl. funktionieren, wird aber von Imperia nicht supportet.

Schema-Upgrade Datenbank#

Wie schon bei früheren Versionen, wird das Datenbankschema auf imperia 10.1 mit dem Skriptaufruf site/bin/site_doctree_admin.pl --upgrade --auto aktualisiert. Die Option --auto ist neu in imperia 10.1 und bewirkt, dass das Skript - soweit notwendig - alle Tabellen automatisch neu aufbaut. Dies ist in erster Linie für Installationen mit Datenhaltung im Dateisystem und der Embedded-Datenbank SQLite3 interessant.

Wichtig

imperia 10.1 verwendet in den Tabellendefinitionen Fremdschlüssel. Falls Sie kein Client-Server-RDBMS sondern die Embedded-Datenbank SQLite3 verwenden, sollten Sie bei manueller Manipulation der Datenbank unbedingt daran denken, dass Sie am Anfang Ihrer Session Fremdschlüssel in SQLite3 mit dem Statement pragma foreign_keys on aktivieren, um eine Korrumpierung Ihrer Daten zu vermeiden.

Upgrade User-Management#

Das User-Management erfordert keine Migration. Sie sollten allerdings bedenken, dass die Primärquelle für alle User- und Gruppendaten nun die Datenkbank für die Dokumentenhaltung ist. Infolgedessen, werden alle Anmeldeversuche vor einem Upgrade des Datenbankschemas scheitern.

  • Lokales User-Management:
    Sie können jederzeit einen Neuaufbau der User- und Gruppendaten in der Datenbank mit dem Skriptaufruf site/bin/site_rebuild_db --todo --batch --um-only erzwingen.

    Wichtig

    Aus Sicherheitserwägungen werden fehlgeschlagene Logins aufgrund eines inkompatiblen Datenbankschemas nicht über die Oberfläche gemeldet, sondern sind nur aus dem Error-Log des Web-Servers ersichtlich.

  • LDAP:
    Das Format der Konfigurationsdatei site/bin/LDAP.conf hat sich geringfügig geändert. Der Installer passt die Datei automatisch an das neue Format an. Die Systemvariablen UMLIGHT_PLUGIN und DATABASE_STORAGE_PLUGIN werden nicht mehr benötigt. imperia wird die neue Systemvariable UM_PROVIDERS automatisch auf “LDAP” setzen, wenn in Ihrer Installation LDAP-Authentifizierung aktiviert ist.
    Nach dem Datenbank-Upgrade, sowie nach jeder Änderung der Gruppenstruktur in Ihrem LDAP, sollten Sie die LDAP-Daten mit dem Kommando site/bin/site_replicate_um.pl --backend=LDAP in imperia replizieren. Die Replizierung findet ebenfalls regelmäßig um 01:00 Uhr nachts statt. Sie können diese Zeit auch mit der neuen Systemvariable UM_REPLICATION_EXEC_TIME (Format HH:MM oder “no”, um die automatische Replizierung abzuschalten) Ihren Bedürfnissen entsprechend setzen.

    Wichtig

    Mit der zusätzlichen Option --debug erzeugen Sie mehr informative Ausgaben des Replizierungsskripts.

    Durch Setzen der Umgebungsvariablen LDAP_DEBUG auf einen wahren Wert, aktivieren Sie in allen Bereichen von imperia informative Debugausgaben.

Perl-Code anpassen#

Die umfangreichste API-Änderung in imperia 10 ist das API des User- und Gruppen-Managements. Allerdings werden die alten Klassendateien Roles.pm, Users.pm und Groups.pm vom Installer absichtlich nicht angetastet und funktionieren für die wichtigsten lesenden Zugriffe auf die User- und Gruppendaten weiter.

Nichtsdestotrotz sollten Sie existierenden Perl-Code an das neue API anpassen. Konsultieren Sie hierfür den “Hitchhiker's Guide To The New User Management in imperia 10.1” in der Datei site/docs/UM-i10.txt für erschöpfende Informationen. Der an das neue API angepasste Perl-Code wird in aller Regel kürzer, besser lesbar und stabiler sein.

Version 10.0.4#

Keine besonderen Hinweise vorhanden.

Version 10.0.3#

Bei Migrationen von imperia 10.0.0 – 10.0.3 müssen Sie unter Umständen die Datenbank neu aufbauen (mit site_doctree_admin.pl -U), falls es bei Ihnen Probleme mit der Reihenfolge der Master- und Copyseiten im Dokumenten-Browser gibt oder es zu Berechtigungsproblemen kommt.

Version 10.0.2.1#

Keine besonderen Hinweise vorhanden.

Version 10.0.2#

Keine besonderen Hinweise vorhanden.

Version 10.0.1#

Keine besonderen Hinweise vorhanden.

Version 10#

  • Upgraden Sie auf die aktuellste Version von imperia 9.2 bevor Sie auf imperia 10 migrieren.
  • Die LDAP-Anbinding in imperia 10 wurde vollständig überarbeitet. Starten Sie im Falle von Problemen bitte das Skript site_replicate_um.pl --backend=LDAP
  • Erweiterte Zugriffskontrolle: Insbesondere für Zielsysteme lässt sich die Zugriffskontrolle wie in Apache 2.4 über Rulesets einstellen. Kopieren Sie hierzu die Datei /site/config/access.conf.sample und passen Sie sie an die eigenen Bedürfnisse an.
  • Schema-Upgrade Datenbank: Wie schon bei früheren Versionen, wird das Datenbankschema auf imperia 10 mit dem Skriptaufruf site/bin/site_doctree_admin.pl --upgrade --auto aktualisiert. Die Option --auto ist neu in imperia 10 und bewirkt, dass das Skript - soweit notwendig - alle Tabellen automatisch neu aufbaut. Dies ist in erster Linie für Installationen mit Datenhaltung im Dateisystem und der Embedded-Datenbank SQLite3 interessant.

    Wichtig

    imperia 10 verwendet in den Tabellendefinitionen Fremdschlüssel. Falls Sie kein Client-Server-RDBMS sondern die Embedded-Datenbank SQLite3 verwenden, sollten Sie bei manueller Manipulation der Datenbank unbedingt daran denken, dass Sie am Anfang Ihrer Session Fremdschlüssel in SQLite3 mit dem Statement pragma foreign_keys on aktivieren, um eine Korrumpierung Ihrer Daten zu vermeiden.

  • Die umfangreichste API-Änderung in imperia 10 ist das API des User- und Gruppen-Managements. Allerdings werden die alten Klassendateien Roles.pm, Users.pm und Groups.pm vom Installer absichtlich nicht angetastet und funktionieren für die wichtigsten lesenden Zugriffe auf die User- und Gruppendaten weiter.
    Nichtsdestotrotz sollten Sie existierenden Perl-Code an das neue API anpassen. Konsultieren Sie hierfür den “Hitchhiker's Guide To The New User Management in imperia 10.1” in der Datei site/docs/UM-i10.txt für erschöpfende Informationen. Der an das neue API angepasste Perl-Code wird in aller Regel kürzer, besser lesbar und stabiler sein.

  • In imperia 9 personalisierte Dashboards werden in Version 10 nicht übernommen. Grund dafür ist eine Anpassung der Dashboards, um die Konfigurationsmöglichkeiten der Widgets erweitern zu können.
    Lesen Sie auch Upgrade User-Management.

  • Wenn imperia 10 über ein existentes imperia 9 System installiert wird, wird ein sog. "Kompatibilitätslayer" mit installiert.
    Dieser Kompatibilitätslayer interpretiert noch einige der System-Conf-Variablen, die es in imperia 10 nicht mehr gibt.
    Somit können unter anderem Projektskripte weiter funktionieren. In einem "frischen" imperia 10-System stehen diese Variablen nicht mehr zur Verfügung.
    Bitte beachten Sie, dass der Kompatibilitätslayer nur mit eingeschränkter Funktionalität ausgestattet ist, um den Umstieg zu erleichtern.

Version 9.2.12#

Im MAM werden nun auch Vorschaubilder von SVG-Dateien generiert. Dazu muss allerdings die folgende System.conf-Variable gesetzt werden: MAM_THUMBNAIL_SVG_TO_MIME = 'png'
Im Falle von Icons eigens erstellter Menüpunkte, müssen diese neu ausgewählt werden, d.h. die Ersetzungen müssen manuell vorgenommen werden.

Version 9.2#

  • Mit imperia 9.2 wurde der Zugriff auf das Benutzermanagement beschleunigt. Nach dem Update führen Sie bitte das Skript site_doctree_admin.pl -U aus.
    Lesen Sie dazu auch die Release 9.2-Dokumentation.

  • Mit der Einführung des HTML5-Grids werden die Konfigurationsdialog der Workflow-Schritte in regulärem HTML definiert. Eigene Konfigurationsdialoge müssen deshalb mit Hilfe des Skripts site/bin/site_migrate_fxml_to_html.pl migriert werden. Jedes Plug-in muss einzeln migriert werden!
    Zusätzlich benötigen Sie die Perl-Module XML::LibXML und XML::LibXSLT, damit die Migration funktioniert. Diese Module sollten Sie vor der Migration Ihrer Konfigurationsdialoge installieren.
    Lesen Sie dazu auch das Kapitel Workflows.

Version 9#

  • Wenn imperia 9 über ein existentes imperia 8 System installiert wird, wird ein sog. "Kompatibilitätslayer" mit installiert.
    Dieser Kompatibilitätslayer interpretiert noch einige der System-Conf-Variablen, die es in imperia 9 nicht mehr gibt.
    Somit können unter anderem Projektskripte weiter funktionieren. In einem "frischen" imperia 10-System stehen diese Variablen nicht mehr zur Verfügung.
    Bitte beachten Sie, dass der Kompatibilitätslayer nur mit eingeschränkter Funktionalität ausgestattet ist, um den Umstieg zu erleichtern.

  • in allen Perl-Erweiterungen empfehlen wir ein Codegerüst, das ungefähr so aussieht:

    use strict;
    
    use Imperia;
    
    use vars qw ($new $metainfo);
    


    An die wichtigsten Objekte kommen Sie mit folgenden Statements:

    my $system_conf = $imperia->common->
    {system_conf}
    
    ;
    my $doctree_plugin = $imperia->common->
    {doc_tree}
    
    ;
    my $user_info = $imperia->common->
    {user}
    
    ;
    


    Der Aufruf der Variablen erfolgt dann entsprechend:

    my $liveServer = $system_conf->
    {'ABS-DOC-ROOT'}
    
    ;
    my $doc_root = $system_conf->
    {'DOCUMENT-ROOT'}
    
    ;
    


    Restlicher Code ...

    $new = "Ergebnis";
    


    Weitere Methoden für Perl Erweiterungen finden Sie unter perldoc site/modules/core/Imperia.pm.