09 fév 2012

La mise à jour d'une version majeure de Drupal vers une autre est un processus qui peut être relativement complexe pour peu que votre site comporte un grand nombre de modules spécifiques.

Dans certains cas il sera plus rapide d'envisager une nouvelle version du site, avec migration des données.

 

1) La première chose à faire semble évidente :
Il faut faire un backup de la base et des fichiers de votre site drupal 6.

2) Mettre à jour tous vos modules vers la dernière version existante.

3) Mettre le site en mode "Maintenance" et activer le thème Garland, qui existe en version 6 et en version 7.

4) Désactiver tous les modules "non core".

5) Supprimer le fichier "sites/default/default.settings.php".

6) Supprimer tous les dossiers et fichiers de l'ancien Drupal 6 (à l'exception du dossier "sites").

7) Uploader Drupal 7

8) Faire une mise à jour de votre base de données avec "adresse du site/update.php". Pour cela il faudra surement changer "$update_free_access = FALSE;" pour "$update_free_access = TRUE;" dans le fichier "sites/default/settings.php". (Ne pas oublier de remettre à "False" quand l'upgrade est fini !).

9) Faire la mise à niveau des modules.

10) Visiter la page "Administration > Reports > Status report" pour vérifier que tout s'est bien passé.

Dans ce long processus le plus difficile est évidemment la mise à jour des modules "non core".

Certains possèdent une version Drupal 7, d'autres non, d'autres encore ont changé de nom ou bien ont été remplacés par des modules aux fonctions similaires.

Certains modules de Drupal 6 font maintenant parti du coeur de Drupal 7, d'autres (CCK, Taxonomy ...) requièrent une migration de contenu.

Drupal upgrade assist

-------------------------------------------------------------------------------------------------

Quels sont les outils fournis par Drupal pour aider dans ce processus ?

Upgrade status vous permettra de vérifier l'existence de module en version 7 et vous accompagne pendant la mise à jour et Coder offre la possibilité d'une mise à jour "auto" de vos module Drupal 6 vers Drupal 7.