Categorizar las Migraciones de Acuerdo a Su Tipo

Publicado por Edys Meza el 11 de Noviembre de 2016

Es muy frecuente que en una migración de drupal 6,7 a drupal 8 se haga el proceso de migración muchas veces, esto se aplica más a sitios que son muy activos en producción, los administradores están actualizando o agregando contenido nuevo.

Hay que tener en cuenta que la API de migración de Drupal 8 ofrece una interfaz de usuario para hacer migraciones, mediante el path /upgrade. De esta manera el proceso de migración es una sola vez y no podemos hacer personalizaciones.

La forma más clásica de hacer un upgrade, puede ser seguida por estos pasos:

  1. Generar los archivos de configuración de las migraciones. Ejemplo:
    drush migrate-upgrade --legacy-db-url=mysql://root:root@localhost/drupal6 --legacy-root=/var/www/drupal6 --migration-prefix=”” --configure-only)

     

  2. Migrar estructura y configuración del sitio viejo, ejemplo: variables, block, vocabularios, tipos de contenidos, etc. Ejemplo:
     drush migrate-import --tag=Configuration

     

  3. Hacer cambios en la configuración generada por la migración. Ejemplo: revertir el texto por defecto en drupal 8 de muchas configuraciones que fueron cambiadas por la migración. Luego generamos la configuración. Ejemplo:
    drush config-export

     

  4. Por último migrar todo el contenido de los nodos, términos de taxonomías, etc. Ejemplo:
    drush migrate-import --tag=Content

     

En un flujo normal, el paso #1 se ejecuta una sola vez para generar todas las migraciones. El paso #2 se ejecuta y se retoca unas cuantas veces hasta obtener las configuraciones en el lugar correcto, pero estas migraciones pueden ser borradas o ignoradas por el resto del proceso una vez que hayamos almacenado todas las configuraciones generadas. El paso #4, este podría ser ejecutado más de una vez, las veces que se necesite.

Con el patch adjunto, es posible llevar a cabo lo planteado anteriormente, las migraciones son generadas categóricamente, se agrega un tag a cada migración dependiendo de su tipo, Configuration para las migraciones de configuración y Content para las migraciones de contenido y de esta forma tendremos categorizadas las migraciones de acuerdo a su tipo. Esto es un cambio de juego. Ahora puedes migrar toda la configuración de un sitio, obtener una aprobación de la configuración del sitio con un contenido de ejemplo y, a continuación, programar una data de entrada para extraer todo el contenido restante. Antes, esto era terriblemente difícil y laborioso averiguar qué era contenido y cuál era configuración del sitio. Esto ahora no es un problema.

¿Está buscando ayuda para una migración o actualización de Drupal? Independientemente de la complejidad del sitio o de los datos, MTech puede ayudarle a pasar de un CMS privado o actualizarlo a la última versión: Drupal 8.

Escríbanos sobre su proyecto y nos pondremos en contacto con usted dentro de 48 horas.