i-doit sollte immer in der aktuellsten Version betrieben werden. In Minor-Releases befinden sich immer zahlreiche Bugfixes, in Major-Releases dazu dann noch neue Funktionen und Verbesserungen von bestehenden Funktionen. Minor-Releases erscheinen ungefähr alle vier Wochen, Major-Releases alle sechs Monate. Das Update kann über die Web-Oberfläche von i-doit durchgeführt werden, setzt jedoch einen Internetzugang (gegebenenfalls über einen HTTP-Proxy) voraus. Alternativ kann das Update über die Konsole vorbereitet und anschließend über die Web-Oberfläche fortgeführt werden.
Releases überspringen
Wenn aktuell die Version 1.13.1 installiert und schon die Version 1.13.3 verfügbar ist, wird trotzdem nur die nächsthöhere Version - also 1.13.2 - angezeigt. Allerdings können Minor-Releases grundsätzlich übersprungen werden. Dennoch werden über diesen Weg trotzdem alle Minor-Releases einzeln installiert, bis die aktuellste Version erreicht ist. Wenn du direkt auf die Version 1.13.3 springen möchtest, kannst du das neueste Paket im Kundenportal herunterladen und auf dem i-doit-Host entpacken. Die notwendigen Schritte dafür kannst du hier im unteren Teil des Artikels finden Update über die Konsole via console.php
Version die nicht übersprungen werden können
Das Update von Version 1.16 über die Version 1.16.1 zur 1.16.2 kann nicht übersprungen werden.
Das Update auf Version 30+ kann nur von Version 29 aus durchgeführt werden.
Backup
Vor dem Update sollte unbedingt ein Backup angefertigt werden.
Update über die Web-Oberfläche
Das Update erreichst du entweder unter Verwaltung → [Mandanten Name] Verwaltung → i-doit Update oder über das Quicklaunch-Widget auf dem Dashboard oder über die URL http://i-doit-host/i-doit/?load=update
Nach dem Aufruf öffnet sich eine eigene Oberfläche, in der geprüft wird, wie der aktuelle Zustand des Systems ist. In unserem Screenshot sehen wir, dass unter anderem die PHP-Extension mcrypt nicht gefunden wurde. Sollte solch eine Meldung ausgegeben werden, ist es sehr wichtig, das System dementsprechend anzupassen. Schaue hier am besten in unsere Systemvoraussetzungen bzw. in unsere Systemeinstellungen. Nach der Anpassung der Umgebung sollte alles grün abgehakt bzw. auf "OK" stehen.
Im nächsten Schritt werden die verfügbaren Update-Pakete angezeigt. In unserem Beispiel ist i-doit in Version 31 installiert und ein Update ist derzeit lediglich auf die gleiche Version möglich. Über Check for a new version kannst du prüfen lassen, ob ein neues Paket verfügbar ist. Hierfür ist jedoch zwingend eine Verbindung zum Internet nötig.
Nach einem Klick auf "Check for a new version" wird im nach der nächsthöheren Version geprüft.
Nach einem Klick auf Download wird das Update-Paket heruntergeladen und entpackt.
Schreibrechte
Sollte es beim Herunterladen und Entpacken zu einer Fehlermeldung kommen, liegt dies in vielen Fällen daran, dass der Apache Webserver keine Schreibrechte auf das Verzeichnis hat, in dem i-doit installiert ist. Weitere Hinweise darauf befinden sich weiter unten Rechte setzen
Nun steht die neue Version für das Update bereit. Es kann ausgewählt und mit einem Klick auf "Next" gestartet werden. Wer sich für die Änderungen interessiert, die das Paket mit sich bringt, findet dazu unter see changelog eine Auflistung.
In der Regel sind die Haken bereits, wie im Bild erkennbar, gesetzt, sodass die Systemdatenbank und die dazugehörigen Mandanten schon für das Update ausgewählt sind.
Allerspätestens jetzt solltest du ein Backup anfertigen. Wenn du ein Backup hast, kannst du über den Button Yes, I did a backup! - Start the update das Update einspielen.
Jede Änderung kann Auswirkungen auf Dateien und die Datenbanken haben.
Sollte hierbei etwas schief gehen (typischerweise durch fehlende Schreibrechte), wird dies mit einem roten ERROR bemängelt.
Sollte hier die Fehlermeldung "... row size too large" auftauchen, dann finden Sie die Lösung unter Troubleshooting.
Wenn alles mit einem grünen "DONE" angezeigt wird, kannst du über Next den nächsten Schritt aufrufen.
Je nach Update werden Änderungen an bestehenden Daten vorgenommen. Der Schritt "Migration" führt diese aus und meldet, ob die Änderungen erfolgreich waren.
Nach der sogenannten "Property Migration" sollte hier ebenfalls alles grün angezeigt werden.
Nun ist das Update abgeschlossen. Wer detaillierte Informationen zum Update nachlesen möchte, kann dies in der verlinkten Log-Datei tun. Über Run i-doit v. kann zu i-doit zurückgekehrt werden. Es ist sehr zu empfehlen, den Browser und den i-doit-Cache unter Verwaltung → [Mandanten Name] Verwaltung → Systemreparatur und Bereinigung zu löschen.
Update über die Konsole vorbereiten
Das Update kann über die Konsole vorbereitet werden. Für die Vorbereitung muss aus dem Kundenportal das neuste Update-Paket heruntergeladen werden.
Releases überspringen
Hier ist zu beachten, dass Minor-Releases übersprungen werden können, Major-Releases aber nicht.
Das Update-Paket kann (beispielsweise per WinSCP) auf dem Server abgelegt werden. Verschiebe danach das Paket in das Hauptverzeichnis von i-doit, wenn du es nicht schon direkt dort abgelegt hast. Das geht mit diesem Befehl:
1
|
|
Dann muss das Paket entpackt und alle bestehenden Dateien überschrieben werden
1 2 |
|
Jetzt werden die Dateirechte angepasst, sodass der Webserver lesend wie schreibend Zugriff auf i-doit hat.
Die hier genutzte Benutzer:Gruppen Kombination www-data:www-data bezieht sich auf Debian GNU/Linux oder Ubuntu Linux. Sollten ein anderes Betriebssystem genutzt werden, muss die genutzte Benutzer:Gruppen Kombination angepasst werden.
Rechte setzen
1 2 3 4 5 |
|
Nun kannst du in unserer Anleitung für das Update über die Web-Oberfläche weiterschauen und dabei die Schritte für den Download des neuesten Pakets überspringen.
Update über die Konsole via console.php
Backup
Vor dem Update sollte unbedingt ein Backup angefertigt werden.
Möchte man das Update über die Konsole ausführen wird die console.php verwendet. Dazu verwenden wir den den update Befehl der console.php.
Zuerst wechseln wir in das i-doit root Verzeichnis:
1
|
|
Dann führen wir den Update Befehl aus und müssen noch Interaktiv einige Fragen beantworten davor das Update durchgeführt werden kann:
1
|
|
Wir können dem Befehl auch direkt alle notwendigen Parameter mitgeben. Für ein Update von i-doit Version 1.17 oder 1.17.2 auf Version 1.18 sieht der Befehl wie folgt aus:
1
|
|
Die Ausgabe kann dann z.B. so aussehen:
Message | Result |
---|---|
i-doit update | OK |
Environment Check | OK |
PHP Check | OK |
Configuration | OK |
Ini Setting: max_input_vars > 10000: failed | WARN |
Ini Setting: post_max_size > 128M: failed | WARN |
php-ext: mod_rewrite: failed | WARN |
Sql Check | OK |
Process update | OK |
File: /var/www/html/i-doit/updates/versions/v1.18.1/update_sys.xml should exist: failed | OK |
File: /var/www/html/i-doit/updates/versions/v1.18.1/config_template.inc.php should exist: failed | OK |
Upgrade config | OK |
Message | Result |
---|---|
i-doit update | OK |
Process update | OK |
Update \idoit_system_i-doit\ with /var/www/html/i-doit/updates/versions/v1.18.1/update_sys.xml: Update is successful | OK |
Update tenant databases | OK |
Update \idoit_data_i-doit\ with /var/www/html/i-doit/updates/versions/v1.18.1/update_data.xml: Update is successful | OK |
Remove update files using /var/www/html/i-doit/updates/versions/v1.18.1/update_files.xml: Removing done | OK |
Update \idoit_system_i-doit\ with /var/www/html/i-doit/src/classes/modules/pro/install/update_sys.xml: Update is successful | OK |
Update tenant databases | OK |
Update \idoit_data_i-doit\ with /var/www/html/i-doit/src/classes/modules/pro/install/update_data.xml: Update is successful | OK |
Migrate tenant databases | OK |
Migrate properties of \idoit_data_i-doit\ with /var/www/html/i-doit/updates/versions/v1.18.1/migration/: Migration is successful | OK |
Clear caches | OK |
Anschließend kann i-doit verwendet werden. Nach dem Update sollte der Cache geleert und der Suche-index erneuert werden.
Kommentare
0 Kommentare
Zu diesem Beitrag können keine Kommentare hinterlassen werden.