Facilitation de la migration
Le module cœur « Migrate Drupal » de Drupal 8 fournit un support API pour la migration de Drupal vers Drupal, tandis que « Migrate Drupal UI » offre une interface utilisateur simple pour la mise à jour depuis les anciennes versions de Drupal.
Les mises à jour de Drupal 6 vers Drupal 8 et de Drupal 7 vers Drupal 8 sont stables pour les sites unilingues. Le chemin de mise à jour pour les sites multilingues n’est pas encore finalisé. Consultez la section Mise à jour multilingue de Drupal 6 vers Drupal 8 pour un résumé des mises à jour multilingues Drupal 6 vers Drupal 8 et la problématique méta des migrations multilingues pour la liste des problèmes de migration multilingue. Plusieurs approches existent pour stabiliser les chemins de mise à jour D6-D8 et D7-D8.
Testez minutieusement la mise à jour de votre site et remontez vos résultats
Lors de la mise à jour de votre site Drupal 6 ou Drupal 7 vers Drupal 8, il est essentiel de tester soigneusement et de vérifier les résultats. Il est possible que certains éléments ne soient pas mis à jour comme attendu. Dans ce cas :
- Vérifiez d’abord si le problème figure dans la section Problèmes connus lors de la mise à jour de Drupal 6 ou 7 vers Drupal 8
- Si votre problème n’y figure pas, recherchez les problèmes ouverts sur la migration Drupal 6 vers Drupal 8 ou les problèmes de migration Drupal 7 vers Drupal 8.
- Si vous ne trouvez pas de problème existant pour votre cas, merci de créer un nouveau ticket dans la file des problèmes du système de migration principal. Signaler un nouveau bug de migration est une contribution précieuse qui aide à stabiliser les migrations !
Lors de la création des rapports, ceux-ci seront affectés au composant « système de migration ». Il est crucial de fournir un maximum d’informations détaillées :
- Fournissez des captures d’écran avant (depuis Drupal 6/7) et après (Drupal 8), si possible.
- Décrivez le problème aussi précisément que possible.
- Indiquez toute information supplémentaire sur votre site susceptible d’être pertinente.
- Exemple d’un bon rapport de problème : https://www.drupal.org/node/2853872
- La description concise, la capture d’écran et les annotations sous celle-ci ont été réalisées dans le rapport original.
- Le résumé du problème a été mis à jour plusieurs fois ensuite, à mesure que de plus en plus d’informations étaient découvertes lors de l’analyse.
- La mise à jour du résumé est une étape très importante du processus de résolution. Parfois, le transfert de bugs peut être très complexe, et maintenir à jour les résumés aide grandement les personnes en charge de la migration et les autres participants !
- N’hésitez pas — nous tenterons de rédiger un rapport de bug aussi complet que possible !
Aidez à tester les patchs
Si vous souhaitez aider à tester les correctifs de migration, vous devez configurer un environnement de test. Appliquez toujours les patchs sur la dernière version dev de Drupal 8.
- Pour des informations sur l’utilisation de git pour appliquer des patchs, voir le guide de git patch pour développeurs.
- Pour plus d’informations générales sur les patchs, voir la section Patchs du guide de démarrage.
Aidez à identifier les causes profondes des problèmes de migration
Si vous avez un peu plus d’expérience avec Drupal et son modèle de données, vous pouvez probablement aider à comprendre les causes principales des erreurs de migration. Puisque nous parlons de migration de données, il est essentiel de comprendre :
- D’où proviennent les données source dans Drupal 6/7
- Et où elles doivent aller dans Drupal 8
Quelques outils pour vous aider à comprendre d’où viennent les données :
- Le module Devel est un excellent outil pour inspecter les données sources dans Drupal 6/7.
- phpMyAdmin ou un autre navigateur de base de données vous aideront à localiser les sources des données dans Drupal 6/7.
- Si vous pouvez identifier le formulaire Drupal 6/7 où les données sont stockées mais pas retrouver les données dans la base, vous pouvez toujours consulter l’API. Ouvrez le formulaire Drupal 6/7 où les données sont stockées, copiez-collez le champ, et effectuez une recherche Google :
site:api.drupal.org <entrez ici ce que vous cherchez>
Vous pouvez lire les configurations de migration dans Drupal 8 ainsi :
- admin/config/development/configuration/single/export
- Sélectionnez « migration » comme « type de configuration »
- Sélectionnez la migration que vous souhaitez inspecter
Quelques mots sur les tests automatisés de migration
Toutes les corrections de bugs liées au cœur de Drupal 8 doivent être couvertes par des tests automatisés. Vous pouvez soumettre des correctifs sans tests si vous n’êtes pas familier avec les tests automatisés. Ce chapitre est destiné aux contributeurs avancés souhaitant participer aux tests.
Les migrations doivent être testées afin que le bot de test exécute réellement la migration. Lors de l’écriture des tests pour vos migrations cœur de D6/D7 vers D8, des fixtures de base de données incluses dans le cœur Drupal 8 sont utilisées :
- core/modules/migrate_drupal/tests/fixtures/drupal6.php
- core/modules/migrate_drupal/tests/fixtures/drupal7.php
- En savoir plus sur la génération de fixtures pour les tests de migration D8
Les tests réels sont généralement définis dans les tests kernel du module concerné, par exemple dans core/modules/comment/tests/src/Kernel/Migrate/d7