Update van Drupal 8 naar Drupal 9
De website van Erasmus Universiteit Rotterdam is één van de grootste Drupal websites van Nederland. Deze hebben wij geupdate van Drupal 8 naar Drupal 9. Een essentiële stap, want met de komst van Drupal 9 in juni 2020 stopt de ondersteuning van Drupal 8 in november 2021. De update is een technische stap ter voorbereiding op toekomstige Drupal 9-features en security-updates.

Het belang van de update van Drupal 8 naar Drupal 9
Om de beveiliging van de website van Erasmus Universiteit Rotterdam te garanderen, voeren we security-updates altijd meteen door. Ook bekijken we de impact van nieuwe releases. Bij de release van Drupal 9 werd bekend dat het Drupal Security Team vanaf november geen support meer aanbiedt voor Drupal 8. Om de beveiliging te kunnen blijven garanderen was het dus een must om de website te updaten.
Overstap zo snel mogelijk realiseren
Met meer dan 120 contrib modules (standaard modules) en 80 custom modules wisten we dat de update een grote uitdaging ging worden. Daarom gingen we vrijwel direct na de aankondiging van Drupal 9 aan de slag met een plan om de overstap zo snel mogelijk te realiseren. Met de wetenschap dat versie 9.1 in december 2020 uitkwam hadden wij een mooie deadline op de radar. In deze versie zitten namelijk functionaliteiten die een update van 8 naar 9.1 wat lastiger maakt. Daarom is het aan te raden om eerst te updaten naar 9.0 en uitvoerig te testen en daarna over te gaan naar 9.1.
Actieve modules compatibel maken voor Drupal 9
Hoe snel een website daadwerkelijk over kan gaan naar Drupal 9, hangt onder andere af van de actieve modules en in hoeverre deze al compatibel zijn met Drupal 9. De Upgrade Status module is een onmisbaar hulpmiddel bij de update naar Drupal 9. Je krijgt snel inzicht in de compabiliteit van modules. Custom code hebben we handmatig nagelopen op depreciated (verouderde) code. Uit onze analyse bleek een relatief groot deel van de modules nog niet compatibel waren. Werk aan de winkel dus.
Er bestaan duizenden modules binnen Drupal, ontwikkeld door developers over de hele wereld. Wanneer er een fout in zit, kan deze worden opgelost met een patch. Dit is een aanpassing, vervanging of toevoeging binnen de bestaande code om de module weer perfect te laten werken of compatibel te maken voor een nieuwe versie van Drupal. In de afgelopen sprints hebben we nieuwe patches ontwikkeld en bestaande geupdate. Deze core en contrib patches hebben we teruggegeven aan de community waardoor deze beschikbaar zijn voor iedereen binnen de Drupal Community.

Testen, testen en nog eens testen
Na een aantal weken konden we de update daadwerkelijk uitvoeren en de website uitvoerig gaan testen. We testen zowel handmatig als automatisch. Gezien de omvang van het project hebben we vorig jaar vooral ingezet op automatische testen en daar hebben we nu heel veel baat bij gehad. Na het uitvoeren van de update zagen we direct welke automatische test op rood staan. Na wat aanpassingen stond binnen een week alles op groen. Vanaf dat moment konden we de update uitrollen en starten met handmatig testen.
Bij projecten van een dergelijke omvang is het een must om automatische functionele en front-end testen in de workflow te integreren. Het geeft het team én de klant vertrouwen. Wanneer een functionaliteit op groen staat weet je dat deze na een update nog steeds werkt. Dit bespaart veel handmatig werk gedurende het project, waardoor de eenmalige investering zich dik en dubbel terugbetaalt.
En nu verder?
We zijn trots dat we relatief snel zo’n grote website geüpdate hebben naar Drupal 9 en er nu weer een solide basis staat waarmee we gemakkelijk verder kunnen. Inmiddels zijn we ook bezig om een “User Interface Design System” op te zetten in StorybookJS om de gehele huisstijl binnen de EUR te bewaken, alle componenten “Decoupled Ready” te maken en automatisch te laten testen in meerdere browsers en op het gebied van toegankelijkheid.
Ook naadloos updaten naar Drupal 9?
Wil je meer informatie over de overstap van jouw Drupal-website naar Drupal 9? Of ben je benieuwd naar de voordelen van automatisch testen voor jouw organisatie? Onze experts helpen je graag verder.
Neem contact op