Makina Blog
Migration Drupal 7 vers Drupal 9 : état des lieux à l'usage des décideurs
Retour sur les versions 7, 8, 9 et 10 de Drupal pour vous aider à y voir plus clair…
Le monde Drupal ces dernières années n’a pas gagné en clarté pour les décideurs : entre un Drupal 7 dont la date de fin de vie est perpétuellement repoussée, une version Drupal 8 devenue obsolète avant son prédécesseur et les versions 8, 9, 10 de Drupal qui s’enchaînent à un rythme plus soutenu que les versions précédentes, il semble bien difficile d’y voir clair.
![Migration drupal 7 vers Drupal 9](/sites/default/files/styles/to_webp/public/2022-07/Article_D7_D9_Bleu%20copie.png.webp?itok=Y4D0etCL)
Beaucoup de nos clients se posent des questions bien légitimes au regard de la situation confuse qui entoure Drupal 7 :
- Ne devrions-nous pas continuer à maintenir notre site en Drupal 7 alors que sa durée de vie pourrait se voir encore prolongée … ?
- Ceux qui ont déjà opté pour un passage de Drupal 7 à Drupal 8 voient déjà leur site obsolète et doivent passer à Drupal 9 : ont-ils fait un mauvais choix en migrant trop tôt ?
- Devons-nous migrer vers Drupal 9 maintenant alors que la version 10 est prévue pour le printemps ?
Cet article a pour but de vous permettre d’y voir plus clair en remettant en perspective certains éléments historiques et techniques, et ainsi vous permettre de mieux comprendre la situation.
La fin de vie chaotique de Drupal 7
Ces dernières années, la fin de vie de Drupal 7 est l'objet de nombreuses péripéties et atermoiements dont les derniers épisodes ont fait l'objet des annonces suivantes de la part de la communauté Drupal : psa-2019-02-25, psa-2020-06-24
Et puis récemment, décidant sans doute de mettre fin à cette suite d'annonces fantasques de dates que chacun sait devoir finalement ne pas être tenues, la communauté Drupal dans une ultime tentative de mettre fin à une situation devenue ubuesque a annoncé (psa-2022-02-23) ce qui est déjà un fait depuis plusieurs années : la fin de vie de Drupal 7, est à nouveau reportée et sera désormais réévaluée chaque année.
Finalement cela ne change guère la situation : Drupal 7 est bien en fin de vie, et au terme de cette dernière annonce la communauté peut annoncer d'ici à juillet 2023 de repousser ou non la fin de D7 actuellement fixée à Novembre 2023. Autrement dit, dans le pire des cas, la fin de vie de Drupal 7 peut être suivie des faits 5 mois plus tard.
Pour un site de quelque importance, cette épée de Damoclès est un risque important et migrer votre site Drupal 7 est finalement plus que jamais d'actualité.
Drupal 5, D6, D7 : une tradition d’évolution douloureuse
Si vous gérez un ou plusieurs sites Drupal depuis plusieurs années, c’est une chose que vous savez sans doute déjà : les changements de versions majeures de Drupal s’effectuent historiquement dans la douleur, autant pour la communauté qui contribue au développement de Drupal que pour les utilisateurs de ce socle qui doivent migrer leurs contenus d’une version à l’autre.
En effet, ces évolutions majeures sont incompatibles entre elles et leurs changements sont si conséquents que la seule solution est d’extraire le contenu de l’ancienne version pour le pousser dans la nouvelle en reconstruisant tous les contenus. De plus, la gestion de nombreux points problématiques est elle aussi nécessaire tout comme l'adaptation des données, la réécriture des modules custom ou contributeurs devenus incompatibles ainsi que le thème du site. Il Certes des outils existent, comme la suite de modules migrate, qui aident en particulier sur l’aspect des données, mais cette opération reste cependant très délicate et longue sur les projets de peu d’envergure.
Drupal 8 et plus : un cycle d’évolution repensé et plus simple
Le passage à Drupal 8 et plus a marqué un tournant pour la communauté à plus d’un titre, mais celle dont nous allons parler concerne en particulier son cycle d’évolutions.
À partir de la version Drupal 8, une volonté de la communauté est née d’abandonner la stratégie de migration entre les versions majeures qui est pénible, coûteuse pour les utilisateurs du CMS et freine les évolutions d’une version de majeure à l’autre. D’ailleurs, nous le constatons bien avec Drupal 7 qui a du mal à céder la place à ses successeurs.
La communauté opte alors pour un nouveau cycle d’évolution basée sur plusieurs principes structurants :
- Élargissement du cœur : Ajout au cœur Drupal de certains modules qui étaient jusqu'à présent des modules contributeurs pour constituer un ensemble plus cohérent et plus stable.
- Dépréciation progressive des api obsolètes tout au long du cycle de vie d’une version laissant aux programmeurs le temps d’adapter leur code,
- Introduction progressive des nouveautés lors des versions mineures de Drupal.
- Continuité du modèle de données permettant de ne plus recourir à la nécessité d’une migration, mais simplement d’une mise à jour entre les versions majeures.
- Versions majeures plus rapprochées. Pratique imposée avant tout par une contrainte technique en rapport avec Symfony, cette façon de procéder est à la fois moins coûteuse et plus répartie dans le temps.
Le schéma de principe ci-dessous illustre les effets de ce changement de cycle. Le vert représente l’effort de développement nécessaire entre les versions majeures ou mineures de Drupal.
![Cycle evolutions versions majeures Drupal](/sites/default/files/styles/to_webp/public/2022-02/image1.png.webp?itok=mHrje71p)
Comme nous l'observons, à partir de Drupal 8 les publications des versions majeures sont plus rapprochées et nécessitent moins de travail pour assurer la continuité. L’ensemble de la charge de travail nécessaire à la maintenance et à l’évolution d’un site à globalement diminué.
Ainsi la migration Drupal 7 à Drupal 8 ou plus est la dernière grande migration de l’histoire de Drupal que vous devrez faire. La mauvaise nouvelle est que, que vous la fassiez maintenant ou plus tard, il faudra bien finir par s'y résoudre. La bonne nouvelle c’est que lorsque ça sera fait, les transitions aux prochaines versions majeures de Drupal devraient être assez simples et sans douleur si les options qui composent votre socle Drupal 8+ sont judicieusement choisies.
Migrer : des avantages à la clé
Drupal 8 et ses successeurs offrent de nombreuses nouvelles fonctionnalités dont votre projet peut bénéficier. Attendre, c’est laisser votre site se faire distancer par les évolutions du web qui sont portées par les nouvelles versions de Drupal.
Cette migration est une contrainte qui peut se transformer en opportunité : redonner à votre thème un design plus actuel et une expérience utilisateur améliorée, ajouter les fonctionnalités que vous n'osiez plus envisager sur votre vieux site Drupal 7, et reprendre la maîtrise de son évolution.
Planifier et concrétiser sa stratégie de migration
L’attitude attentiste consistant à espérer que la fin de vie de Drupal 7 soit à nouveau repoussée a été, d’un certain point de vue, plutôt payante jusqu'à maintenant. Mais ce ne sera pas toujours le cas. Une migration Drupal 7 prend du temps, et à jouer la montre on finit par être pris par le temps. Il est donc préférable d’anticiper et de maîtriser sa transition plutôt que de subir et de devoir l’envisager dans la précipitation.
Chez Makina Corpus, nous conseillons à nos clients de ne plus attendre et de commencer leurs démarches dès maintenant. Grâce à notre expérience dans ce domaine, nous disposons d’outils de diagnostics, de solutions performantes et adaptées, et d’une approche vous permettant de maîtriser vos coûts au mieux et tout en sécurisant votre migration.
Si vous attendiez une opportunité pour commencer à réfléchir à la question, c’est peut être maintenant.
N’hésitez pas à nous consulter !
En savoir +
Formations associées
Formations Drupal
Formation Drupal Administrateur
À distance (FOAD) Du 21 au 25 octobre 2024
Voir la formationActualités en lien
![Encart D7 vers Drupal 11](/sites/default/files/styles/360x200/public/2024-08/D11_Encart.png.webp?itok=KhXpu9vu)
Migration d'un site Drupal 7 en Drupal 11
Trucs, astuces et "bouts" de code pour migrer votre site web de Drupal 7 à Drupal 11. Compte-rendu d'une conférence donnée au Drupalcamp Rennes 2024.
![Drupal 9](/sites/default/files/styles/360x200/public/2022-02/Articme_Drupal_9.png.webp?itok=X4IthFTf)
Migration de Drupal 8 à Drupal 9
Retour d'expérience sur la montée de version de plusieurs sites de Drupal 8 à Drupal 9.
![Drupal 7 - 8 et 9](/sites/default/files/styles/360x200/public/2021-10/drupal-7-8-9.png.webp?itok=gpwPaLza)
Drupal 9 : préparez-vous !
Dans quelques jours, le 3 juin 2020, aura lieu la sortie de Drupal 9 en version stable. À quels changements s’attendre ? Quel sera l’impact sur les sites développés actuellement en Drupal 8 et Drupal 7 ? Voici quelques informations qui vous permettront de mieux appréhender cet événement et d'en mesurer les impacts.