Supporto alla migrazione
Il modulo core «Migrate Drupal» in Drupal fornisce il supporto API per la migrazione da Drupal a Drupal, mentre «Migrate Drupal UI» offre una semplice interfaccia utente per l’aggiornamento dalle versioni precedenti di Drupal.
Gli aggiornamenti da Drupal 6 a Drupal 8 e da Drupal 7 a Drupal 8 sono stabili per i siti monolingue. Il percorso di aggiornamento per i siti multilingue non è ancora completo. Consulta la sezione Aggiornare Drupal 6 multilingue a Drupal 8 per una breve panoramica sugli aggiornamenti multilingue da Drupal 6 a Drupal 8 e la meta-issue delle migrazioni multilingue per un elenco dei problemi di migrazione multilingue. Esistono diversi modi per garantire la stabilità dei percorsi di aggiornamento D6-D8 e D7-D8.
Testa accuratamente l’aggiornamento del tuo sito e segnala i tuoi risultati
Quando aggiorni il tuo sito da Drupal 6 o Drupal 7 a Drupal 8, assicurati di testare attentamente e verificare i tuoi risultati. È possibile che tu trovi qualcosa che non si è aggiornato come previsto. Quando ciò accade:
- Controlla prima se il problema è indicato in Problemi noti nell’aggiornamento da Drupal 6 o 7 a Drupal 8
- Se il tuo problema non è nell’elenco, cerca tra le issue aperte di migrazione Drupal 6 - Drupal 8 o le issue di migrazione Drupal 7 - Drupal 8.
- Se non trovi un problema esistente relativo a ciò che incontri, crea una nuova issue nella coda dei problemi del sistema di migrazione core. Segnalare un nuovo bug di migrazione è già un contributo molto prezioso e aiuta a garantire la stabilità delle migrazioni!
Quando vengono segnalati nuovi problemi, questi passano al componente «migration system». È estremamente importante fornire quante più informazioni possibili, in modo dettagliato.
- Fornisci screenshot prima (da Drupal 6/7) e dopo (Drupal 8), dove applicabile.
- Descrivi il problema nel modo più specifico possibile.
- Indica eventuali informazioni aggiuntive sul tuo sito che potrebbero essere rilevanti per il problema.
- Esempio di un buon report di problema: https://www.drupal.org/node/2853872
- La breve descrizione, lo screenshot e le annotazioni sotto lo screenshot sono state create nel report originale.
- Il riepilogo del problema è stato successivamente aggiornato più volte, man mano che venivano trovate ulteriori informazioni durante l’analisi.
- Aggiornare il riepilogo del problema è una parte estremamente importante del processo di correzione. A volte correggere i bug può essere molto complesso, e mantenere aggiornati i riepiloghi aiuta notevolmente i manutentori della migrazione e altri collaboratori!
- Non esitare: cerca di scrivere report dei bug il più dettagliati possibile!
Aiuta a testare le patch
Se vuoi contribuire testando le correzioni di migrazione, devi configurare un ambiente di test. Applica sempre le patch all’ultima versione di sviluppo di Drupal 8.
- Per informazioni sull’uso di git per applicare le patch, consulta la Guida per sviluppatori su git patch.
- Per informazioni più generali sulle patch, consulta la sezione Patch della Guida introduttiva.
Aiuta a trovare le cause principali dei problemi di migrazione
Se hai un po’ più di esperienza con Drupal e il suo modello di dati, probabilmente potrai aiutare a capire le cause principali degli errori di migrazione. Poiché stiamo parlando di migrazione di dati, la cosa più importante da comprendere è:
- Da dove provengono i dati sorgente in Drupal 6/7
- E dove devono andare in Drupal 8
Alcuni strumenti che ti aiuteranno a capire da dove provengono i dati:
- Modulo Devel - un ottimo strumento per esaminare i dati sorgente in Drupal 6/7.
- phpMyAdmin o un altro browser di database ti aiuterà a individuare i dati sorgente in Drupal 6/7.
- Se riesci a identificare il form di Drupal 6/7 in cui sono archiviati i dati, ma non riesci a trovarli nel database, puoi sempre seguire le istruzioni leggendo l’API. Apri il form di Drupal 6/7 in cui sono archiviati i dati, copia/incolla il campo e cercalo su Google con
site:api.drupal.org <inserisci qui ciò che vuoi trovare>
Le configurazioni di migrazione possono essere lette in Drupal 8 nel seguente modo:
- admin/config/development/configuration/single/export
- Seleziona «migrazione» come «Tipo di configurazione»
- Seleziona la migrazione che vuoi controllare
Qualche parola sui test di migrazione automatizzati
Tutte le correzioni di bug relative al core di Drupal 8 devono avere una copertura con test automatizzati. È possibile proporre correzioni senza test, se non si ha familiarità con i test automatizzati. Questa sezione è destinata ai collaboratori più avanzati che desiderano partecipare ai test.
Le migrazioni devono essere testate, in modo che il bot di test esegua effettivamente la migrazione. Quando scrivi test per le migrazioni core da D6/D7 a D8, come dati di origine vengono utilizzati i fixture del database inclusi nel core di Drupal 8:
- core/modules/migrate_drupal/tests/fixtures/drupal6.php
- core/modules/migrate_drupal/tests/fixtures/drupal7.php
- Scopri di più sulla generazione di fixture del database per i test di migrazione D8
I test veri e propri sono solitamente definiti nei test core del modulo corrispondente, ad esempio in core/modules/comment/tests/src/Kernel/Migrate/d7