Un web complex, ple d'interaccions i integracions amb altres sistemes i amb grans expectatives per donar un bon servei als ciutadans de la ciutat.
La web principal de l'Ajuntament de Barcelona va ser creada per Digrup a Drupal 7 fa uns quants anys, no estava a l'horitzó ni amb Drupal 8.
Un lloc complex, ple d'interaccions i integracions amb altres sistemes i amb grans expectatives per donar un bon servei als ciutadans de la ciutat.
Amb aquesta fita superada, i ja amb la data oficial de la fi de Drupal 7, Digrup es va encarregar de migrar el lloc complet a Drupal 10.
Els principals objectius d'aquesta migració van ser:
Una de les premisses era que òbviament la introducció de continguts, a causa de l'actualitat en directe del propi lloc, no es podia aturar, per la qual cosa la dualitat de les versions Drupal 7 i Drupal 10 no es podia estendre durant molt de temps.
Es va planificar en diverses etapes:
Abans de començar la migració, es va analitzar a fons el lloc. Van classificar tot tipus de contingut, taxonomies, vistes, blocs, fitxers, contrib i mòduls personalitzats. Així mateix, es van enumerar totes les pàgines públiques de la web per mantenir-les sota control i poder-les comparar un cop migrades.
Drupal ens proporciona un mòdul d'anàlisi de compatibilitat anomenat upgrade_status que pot ser útil, perquè analitza diversos aspectes tècnics del nucli i mòduls a tenir en compte per a la migració: Upgrade Status
A partir d'aquí, es va calendaritzar el projecte i es van estimar les fases que formarien part del desenvolupament, tenint en compte que en una migració d'aquest tipus sempre es poden trobar sorpreses més endavant.
La fase més tècnica va consistir a preparar el Drupal 7 real per fer-lo totalment compatible amb el futur Drupal 10.
En aquesta fase vam tenir en compte:
Aquest pas és el més senzill de tots, instal·leu Drupal 10 i afegiu les dades de la BD de Drupal 7 al settings.php del lloc per a que la migració estigui ben configurada.
Abans d'iniciar la migració, és convenient tenir instal·lada a Drupal 10 la versió corresponent del mòdul contrib del 7.
Un cop hem verificat que Drupal 10 té accés a la nostra còpia local de Drupal 7, fem la primera prova de migració a través dels mòduls de migració bàsics.
Aquest punt va fer que programaríem una migració personalitzada de fitxers (documentació , imatges, pdf.. ) fent uns .yml personalitzats.
Un cop vam demostrar que la fase de migració va ser un èxit i teníem tot el contingut que volíem a Drupal 10, vam començar la fase d'adaptació.
A grans trets la fase d'adaptació va consistir en maquetar de nou el lloc al sistema de plantilla Twig de Drupal 10, refer views i refactoritzar els mòduls personalitzats que es van fer a Drupal 7.
Un cop vam tenir una còpia en un servidor de desenvolupament web a Drupal 10, vam tornar a executar diverses migracions per comprovar que tot funcionava correctament, assegurant-nos que teníem l'última versió del contingut productiu.
S'ha millorat per actualitzar el codi a php 8.1 i s'ha adaptat el lloc per incorporar-lo a un sistema d'integració contínua per millorar el desenvolupament.
Abans de la publicació, es va revisar pàgina per pàgina, tant el path de la mateixa com les seves metatags, de manera que no afecti al SEO.
Un cop publicat el nou Drupal 10, es va tornar a fer un seguiment del lloc i es va fer el seguiment pertinent.
En els análisis posteriors es va constatar que es va millorar tant el rendiment com en el SEO, i es va deixa el site preparat per a futurs evolutius.
Gràcies a tot l'equip que va intervenir en el projecte per la seva professionalitat i lideratge per tirar endavant aquest complex projecte.