Retour au Blog

Comment désinstaller le module contrib multiversion sur Drupal 8.7 ou une version ultérieure

2021-11-092 min read

Si vous prévoyez une mise à niveau de Drupal 8 vers Drupal 9, je vous recommande vivement de désinstaller le module contrib multiversion avant de mettre à jour le cœur vers la dernière version 9.x.

Certains des modules contrib qui nécessitent le module multiversion sont : Deploy, Workspace, Replication. Ces modules seront également automatiquement désinstallés dans le cadre de ce processus.

1. Installer le Multiversion Remover.

Le module Multiversion Remover joue un rôle important dans ce processus, nous devons donc l'installer :

composer require 'drupal/multiversion_remover:1.0.x-dev@dev'
drush en multiversion_remover -y

2. Supprimer les entités replication, replication_log et workspace.
Accédez aux URL suivantes et supprimez toutes les entités :
* https://VOTRE-URL-SITE/admin/modules/uninstall/entity/replication
* https://VOTRE-URL-SITE/admin/modules/uninstall/entity/replication_log
* https://VOTRE-URL-SITE/admin/modules/uninstall/entity/workspace

3.- Implémenter un hook update.
Copiez le code de ce dépôt et collez-le dans un hook update dans l'un de vos modules personnalisés.

Videz le cache depuis le backend https://VOTRE-URL-SITE/admin/config/development/performance ou en utilisant le terminal drush cr

4.- Exécuter les mises à jour Drupal
Nous devons exécuter le hook update que nous avons implémenté à l'étape précédente, nous devons donc exécuter les mises à jour Drupal depuis le navigateur https://VOTRE-URL-SITE/update.php ou en utilisant le terminal drush updb -y

Important : Pendant que les mises à jour s'exécutent, nous devons vérifier que les entités que nous avons supprimées à une étape précédente ne sont pas recréées, sinon nous devrons les supprimer à nouveau.

N'oubliez pas que cela doit être fait avant la fin du processus de mise à jour.
URL à vérifier si les entités n'ont pas été recréées pendant l'exécution des mises à jour :
* https://VOTRE-URL-SITE/admin/modules/uninstall/entity/replication
* https://VOTRE-URL-SITE/admin/modules/uninstall/entity/replication_log
* https://VOTRE-URL-SITE/admin/modules/uninstall/entity/workspace

Très probablement, vous obtiendrez une erreur, ce qui est normal.

5.- Exécuter les fonctions de multiversion remover.
Vous devez exécuter les commandes suivantes pour terminer le processus de suppression :

drush php-eval "multiversion_remover_uninstall_multiversion_suite()"
drush php-eval "_multiversion_remover_purge_multiversion_kvp()"

6.- Désinstaller le module Multiversion Remover.
À ce stade, le module Multiversion Remover a fait son travail et nous pouvons le supprimer du projet.

drush pmu multiversion_remover -y
composer remove drupal/multiversion_remover

Restez Informé

Recevez les derniers articles et analyses directement dans votre boîte de réception.

Unsubscribe anytime. No spam, ever.