DEFR

Login und Suche



CH Open Sponsoren

Umzugshelfer

Umzugs­hel­fer

von Chris­toph Buchli | 06.01.2014

Hol­ly­wood würde es wohl einen Block­bus­ter nen­nen, was auf die CMS-​Welt Mitte Dezem­ber die­ses Jah­res zukommt. Denn TYPO3 6.2 löst die Long-​Term-​Support– und am häu­figs­ten instal­lierte Ver­sion 4.5 end­gül­tig ab. Ent­spre­chend ste­hen zahl­lose Upgrades und Migra­ti­ons­pro­jekte an, denen TYPO3 mit einer „Smooth Migra­tion“ unter die Arme grei­fen will. Und auch wir bie­ten Umzugshilfe.

Ziel des Smooth-​Migration-​Projekts ist es, von TYPO3 4.5 auf Ver­sion 6.2 zu aktua­li­sie­ren. Der Umzug soll dabei mög­lichst wenig Auf­wand ver­ur­sa­chen und die neue Seite ein sta­bi­ler Grund für wei­tere Ent­wick­lun­gen sein. Leich­ter gesagt als getan, ins­be­son­dere bei den Tau­sen­den Exten­si­ons. Zwar gibt es auch dafür Unter­stüt­zung, der Auf­wand wächst aber mit der Zahl der instal­lier­ten Erwei­te­run­gen. Der grund­sätz­li­che Upgrade-​Prozess beim Wech­sel auf Ver­sion 6.2 unter­schei­det sich nur leicht vom übli­chen Vor­ge­hen. Nach dem Update auf die neu­este 4.5-Version müs­sen zunächst die Erwei­te­run­gen aktua­li­siert wer­den – im bes­ten Fall sind hier bereits 6.2-kompatible Ver­sio­nen ver­füg­bar. Nicht benö­tigte Exten­si­ons kön­nen in die­sem Zug dein­stal­liert und auch gelöscht wer­den. Anschlie­ßend kom­men die vom Smooth-​Migration-​Projekt zur Ver­fü­gung gestell­ten Exten­si­ons sowie das über­ar­bei­tete Install Tool zum Ein­satz. Zen­trale Anlauf­stelle für „Smooth Migra­tion“ ist das Forge-​Projekt. Im Wiki fin­den sich aktu­ell ins­be­son­dere Links und Anlei­tun­gen sowie erste Exten­si­on­Patches. Außer­dem wer­den die zen­tra­len Exten­si­ons vor­ge­stellt.
An Doku­men­ta­tion fehlt es zwar bis­lang, doch das Forge-​Projekt
wird ver­mut­lich auch in Zukunft die zen­trale Stelle für alle
Smooth-​Migration-​bezogenen Arbei­ten und Res­sour­cen sein. Ent­spre­chend ist hier nur etwas Geduld gefragt.

EXTEN­SION 1: SMOOTH­MI­GRA­TION
In der Zwi­schen­zeit lohnt ein Blick in die Haupt-​Extension des Pro­jekts, „smooth­mi­gra­tion“ [2] (ehe­mals „upgrade­re­port“). Sie ver­mit­telt einen guten Über­blick dar­über, was im Code alles vor dem Upgrade ange­passt wer­den muss. Und das ist eine ganze Menge – zahl­rei­che ver­al­tete TYPO3– und PHP-​Funktionen, die Ent­fer­nung
der ver­al­te­ten t3lib-​Dateien und damit ein­her­ge­hende Pro­bleme mit klas­si­schen Require-​Anweisungen, nicht mehr ver­wen­dete Kon­stan­ten und so wei­ter.
Die Exten­sion durch­sucht die eigene Instal­la­tion, zählt auf, wel­che Ände­run­gen nötig sind, und führt auf Wunsch einige Anpas­sun­gen selbst durch. Dar­über hin­aus erkennt sie ver­wen­dete DAM-​Klassen (dazu spä­ter mehr) und, ob das Sys­tem bereit für
UTF-​8 ist. Ob die Ände­run­gen auto­ma­tisch vor­ge­nom­men wer­den kön­nen, zeigt die Exten­sion in einem Backend-​Modul, und bie­tet ent­spre­chende Cron Jobs an. Diese benö­ti­gen einen eige­nen Backend-​User („_​cli_​smoothmigration“) und las­sen sich anschlie­ßend über die Kon­sole und das Skript „cli_dispatch.phpsh“ mit dem Para­me­ter „smooth­mi­gra­tion“ auf­ru­fen [3].
Mit dem Par­am­ter „migrate“ star­ten die Cron­jobs schließ­lich
ihre Arbeit. Aktu­ell erset­zen sie wahl­weise ver­al­tete Auf­rufe sta­ti­scher Metho­den (über den zwei­ten Para­me­ter „repla­ce­Depre­ca­ted­Sta­ticMe­thods“) oder aber löschen Require– und Inclu­de­An­wei­sun­gen von t3lib-​Dateien (Para­me­ter „requi­reOnce“), da
diese mit dem Ein­satz von Name­spaces nicht nur über­flüs­sig, son­dern zur Feh­ler­quelle wer­den.

EXTEN­SION 2: FILE­ME­TA­DATA
Weni­ger zur Feh­ler­ver­mei­dung denn zur Arbeits­er­spar­nis gedacht ist die Sys­tem Exten­sion „file­me­ta­data“ [4]. Sie stellt jene DAM­Fel­der für Meta-​Daten von Dateien wie­der zur Ver­fü­gung, die der neue File Abstrac­tion Layer (FAL) nicht imple­men­tiert. Dazu zäh­len etwa Foto-​Koordinaten oder Infor­ma­tio­nen zur ver­wen­de­ten
Soft­ware beim Erstel­len von Dateien.
Wich­tig ist dabei ledig­lich, die Exten­sion zu instal­lie­ren, bevor die DAM-​Dateien migriert wer­den. Denn Fel­der, die beim Umzug feh­len, wer­den nicht befüllt. Die ent­spre­chen­den Infor­ma­tio­nen sind dann ver­lo­ren bzw. müs­sen neu migriert wer­den.

EXTEN­SION 3: DAM_​FALMIGRATION
Die dritte der emp­foh­le­nen Exten­si­ons, „dam_​falmigration“, über­nimmt DAM-​Relationen und –Infor­ma­tio­nen in den neuen FAL.
Dazu zäh­len die bereits erwähn­ten Meta-​Daten sowie mm-​Relationen und Daten in sämt­li­chen tx_dam*-Tabellen. Dateien aus dem dam_​frontend wer­den stan­dard­mä­ßig in das Uploads-​Inhaltselement über­nom­men.
Die Exten­sion zeigt direkt im Backend-​Modul an, wel­che Schritte zum Umzug nötig sind. Im Gegen­satz zur „smoothmigration“-Extension sind die Cron Jobs hier jedoch im Sche­du­ler ver­füg­bar und kön­nen dort nach­ein­an­der gestar­tet wer­den. Aktu­ell ver­fügt
die Erwei­te­rung über drei Cron­jobs, von denen man­che manu­elle Hilfe in Form von geän­der­ten Ein­stel­lun­gen im Install Tool benö­ti­gen. Ent­spre­chende Hin­weise spuckt dam_​falmigration eben­falls im Backend-​Modul aus.
Für wei­tere Anwen­dungs­fälle lohnt zudem ein Blick in einen Fork der Exten­sion [5]. Dort gibt es bereits wei­tere Jobs, wel­che etwa eine Migra­tion der Kate­go­rien ermög­li­chen.
In Summe macht ein DAM-​Umzug die Migra­tion um eini­ges auf­wän­di­ger. Die „smoothmigration“-Extension gibt zu den nöti­gen Schrit­ten zwar bereit­wil­lig Aus­kunft, ist jedoch nicht imstande, den Umzug hier vor­an­zu­trei­ben. Und selbst mit wei­te­ren Erwei­te­run­gen blei­ben etwa Anpas­sun­gen an jenen Stel­len im Tem­plate, wo DAM ver­wen­det wor­den ist.

KOM­PA­TI­BI­LI­TÄT ERZWIN­GEN
Um im Dickicht der Migra­tion eine Art Rück­fall­schutz zu haben, war einst eine „Com­pa­ti­bi­lity Exten­sion“ geplant. Diese sollte alt­be­kannte Metho­den und Kon­stan­ten wie­der zur Ver­fü­gung stel­len und auf die jewei­li­gen Äqui­va­lente ver­knüp­fen.
Da die Exten­sion „smooth­mi­gra­tion“ aller­dings bereits große Teile der ver­wen­de­ten sta­ti­schen Metho­den fin­den und erset­zen kann, ist diese geplante Exten­sion aktu­ell auf Eis gelegt. Zudem ver­liert sie dank PHP-​Aliases und Auto­loa­der, die die Ver­wen­dung
alter Klas­sen (z.B. t3lib_​*) wei­ter­hin ermög­li­chen, etwas an Rele­vanz. Ob sie auf­grund künf­tig auf­tre­ten­der Pro­bleme den­noch nötig wird, steht der­zeit noch nicht fest.

INSTALL TOOL
Nach der Über­prü­fung und Migra­tion der Exten­si­ons kommt die erste spür­bare Neu­heit von Ver­sion 6.2 zum Ein­satz. Denn das Install Tool ist nicht nur optisch neu, son­dern kann nun mit feh­ler­haf­ten und ver­al­te­ten Exten­si­ons umge­hen. So las­sen sich Erwei­te­run­gen direkt auf Feh­ler prü­fen und gege­be­nen­falls dein­stal­lie­ren. Für
erste Tests eig­nen sich zudem „Con­fi­gu­ra­tion Pre­sets“ für „Deve­lop­ment“, eine Bün­de­lung gän­gi­ger Ein­stel­lun­gen, die die Kon­fi­gu­ra­tion erleich­tern.
Für das Upgrade inter­es­sant ist dar­über hin­aus der Upgrade Wizard, wel­cher wie
gewohnt die nöti­gen Schritte zur Migra­tion von Daten in pas­sen­der Rei­hen­folge aus­führt. Dazu gehö­ren das Aktua­li­sie­ren der Works­paces, der Umzug ver­knüpf­ter Dateien (sofern kein DAM ein­ge­setzt wor­den ist) sowie das Instal­lie­ren der
wich­tigs­ten System-​Erweiterungen. Zudem sucht das Install Tool nach falsch gesetz­ten Dateisystem-​Berechtigungen und bie­tet an, diese per Klick selbst zu kor­ri­gie­ren.

AUGEN AUF
Allen auto­ma­ti­sier­ten Migra­ti­ons­pro­jek­ten zum Trotz: Jede TYPO3-​Installation ist anders und ent­spre­chend gilt es, jedes Upgrade mit Bedacht anzu­ge­hen. Auch das Smooth-​Migration-​Projekt kann diese Vor­sicht nicht kom­plett über­neh­men – das wird schon bei der nicht wirk­lich intui­ti­ven Bedie­nung der invol­vier­ten Exten­si­ons deut­lich. Beson­ders anfäl­lig für Pro­bleme sind selbst modi­fi­zierte oder nicht mehr gepflegte Third-​Party-​Extensions. Hier hilft außer der Suche nach einer pas­sen­den Alter­na­tive nur, selbst am Code Hand anzu­le­gen. Noch mehr Arbeit ver­lan­gen Exten­si­ons, die bis­lang auf DAM set­zen, sei es per PHP oder direkt im Tem­plate. Bei­des muss hän­disch auf FAL geän­dert wer­den. Glei­ches gilt auch für direkte MySQL-​Aufrufe in Exten­si­ons, da der TYPO3-​Core auf mys­qli umge­stellt wurde. Eine im Vor­feld des Upgrades ange­fer­tigte
Liste der Erwei­te­run­gen mit beur­teil­ter Rele­vanz und nutz­ba­rer
Alter­na­tive erspart hier unter Umstän­den eine Menge Arbeit.

UPGRADE-​CHECKLISTE
1. auf 4.5-Patch-Version aktua­li­sie­ren
2. Exten­si­ons auf 6.2-kompatible Ver­sio­nen brin­gen
3. nicht benö­tigte Erwei­te­run­gen dein­stal­lie­ren
4. dein­stal­lierte Erwei­te­run­gen löschen
5. DAM dein­stal­lie­ren
6. mit smooth­mi­gra­tion gefun­dene Feh­ler behe­ben
7. sys_​refindex aktua­li­sie­ren
8. TYPO3-​Core aktua­li­sie­ren
9. Upgrade Wizard aus­füh­ren
10. DB-​Compare durch­füh­ren
11. ggf. DAM mit dam_​falmigration umzie­hen
12. aus­gie­big tes­ten

FAZIT
Um ein Upgrade zu ver­ein­fa­chen, hat das Smooth-​Migration-​Projekt bereits ganze Arbeit geleis­tet; wenn auch das Ziel noch nicht end­gül­tig erreicht ist. Die Schaf­fung einer zen­tra­len Stelle für sämt­li­che Doku­men­ta­tio­nen ist unab­läs­sig, um die Migra­tio­nen zu
ver­ein­fa­chen. Hier sind nicht nur die Ent­wick­ler, son­dern auch all jene gefor­dert, wel­che mit Migra­tio­nen bereits Erfah­run­gen gesam­melt haben und Input lie­fern kön­nen.

TYPO3 6.2 ist wie die Ver­sion 4.5 auf den Long Term Sup­port (LTS) aus­ge­legt, sodass das CMS wie­der für einige Jahre gerüs­tet sein wird. Dies betrifft einer­seits Sicher­heits­as­pekte, ande­rer­seits die Code-​Qualität und nicht zuletzt die Per­for­mance. Die Frage, ob sich ein Upgrade lohnt, stellt sich ab Herbst 2014 nicht mehr. Dann
wird die Unter­stüt­zung für TYPO3 4.5 eingestellt.



Weiterführende Informationen aus dem OSS Directory

Snowflake Productions GmbH

snowflake.ch | 30 Mitarbeitende | 37 Referenzen | 13 Produkte


Digitale Zukunft gestalten

Als Digitalagentur konzipiert, visualisiert und implementiert Snowflake seit 1999 digitale Lösungen, die überzeugen und nachhaltig Bestand haben. Dur...

» Mehr
Letzte Aktualisierung: 08.06.2021  -  Anzahl Ansichten seit dem 01. April 2013: 1935
Erstellt: 14.10.2012

TYPO3

Anwendungen / Enterprise Content Management (Document and Content Management)
11 Firmen, 67 Referenzen


TYPO3 ist ein Enterprise-Content-Management-Framework auf Open Source Basisum Internet- und Intranet-Sites aufzubauen und zu betreiben. Das lizenzkostenfreie System ist bei KMU, Konzernen und ...

» Mehr
Letzte Aktualisierung: 13.12.2016  -  Anzahl Ansichten seit dem 01. April 2013: 151
Erstellt: 14.09.2012

Mitgliedschaft bei /ch/open

Der Vorstand der /ch/open wird jährlich an der Mitgliederversammlung gewählt und arbeitet vorwiegend ehrenamtlich. Werden Sie Mitglied des Vereins /ch/open und unterstützen Sie die Förderung von Open Source Software in der Schweiz.

Einzelmitgliedschaft
Für alle, die persönlich die Anliegen und Aktivitäten von /ch/open unterstützen und kostenlos an Abendveranstaltungen und am Open Business Lunch teilnehmen möchten.
CHF 100.– pro Jahr

Einzelmitgliedschaft für Personen in Ausbildung
Personen in Ausbildung erhalten eine Ermässigung des Mitgliederbeitrags.
CHF 20.– pro Jahr

Kollektivmitgliedschaft
Für Unternehmen, öffentliche Verwaltung, Schulen und andere juristische Personen: Alle Mitarbeiter solcher Organisationen geniessen die gleichen Möglichkeiten und Vergünstigungen wie Einzelmitglieder. Eine definierte Kontaktperson erhält alle Korrespondenz.
CHF 450.– pro Jahr

Sponsormitgliedschaft
Für Mitglieder, welche die Anliegen der /ch/open besonders unterstützen möchten: Sponsormitglieder können Anfang Jahr am /ch/open Sponsoren-Dinner teilnehmen, werden auf der /ch/open Website und dem Portal www.opensource.ch mit Logo aufgeführt, in allen Mailings namentlich mit Link erwähnt und können beliebig viele Projekte und Referenzen im OSS Directory verlinken.
CHF 1000.– pro Jahr

Die Anmeldung für die Mitgliedschaft, die Vereinsstatuten sowie viele weitere Informationen sind auf der Website zu finden:
http://www.ch-open.ch/anmeldeformular_mitgliedschaft/

Twitter Feed







Links

Über unsNewsletterKontaktNutzungsbedingungenCH Open Initiativen



###PIWIK###