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.
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
. -
Zugriff auf Rubriken wurde beschleunigt. Aktivierung des Caches durch Setzen der system.conf-Variable: "USER_CAT_CACHE" =1
-
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. ./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#
Keine besonderen Hinweise vorhanden.
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 Skriptaufrufsite/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 Konfigurationsdateisite/bin/LDAP.conf
hat sich geringfügig geändert. Der Installer passt die Datei automatisch an das neue Format an. Die SystemvariablenUMLIGHT_PLUGIN
undDATABASE_STORAGE_PLUGIN
werden nicht mehr benötigt. imperia wird die neue SystemvariableUM_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 Kommandosite/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 SystemvariableUM_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
undGroups.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 Dateisite/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 unterperldoc site/modules/core/Imperia.pm
.