Migrate API в Drupal 8 для покращеного процесу міграції

20.01.2017
Migrate API в Drupal 8 для покращеного процесу міграції
Автор:

Drupal 8 настільки приваблює своїми інноваціями, що так і хочеться... спакувати речі і переїхати! ;) Міграція на «вісімку» — справа відповідальна, і для неї існує спеціальний інструмент під назвою Migrate API, який допоможе правильно «спакувати» весь контент і конфігурації вашого сайту та «перевезти» їх на Drupal 8. Під час звичайного переїзду легкість процесу залежить від того, наскільки ваші речі легко розмістяться, скажімо, в стандартні коробки. Так і з сайтом: чим менше на ньому кастомного функціоналу, тим швидшим буде процес апгрейду. Ми торкнемося цих та багатьох інших моментів, обговорюючи Migrate API, його переваги, важливі модулі та сам процес міграції.

Migrate API: все найкраще — в ядрі Drupal 8!

Так, всі найкращі модулі опиняються в ядрі Drupal’а, а найперспективніші ідеї народжуються на ДрупалКонах. На одному з них — ДрупалКоні в Празі — відбулося обговорення щодо створення покращеної та потужної системи для міграції у «великій вісімці». Вона повинна була успадкувати найкращі ідеї від модуля Migrate у Drupal 7, але забезпечити набагато легший та вдосконалений процес міграції з ширшими можливостями.

Місію виконано! Ядро Drupal 8 отримало інструмент Migrate API, що був доданий як набір експериментальних модулів, але вдосконалювався, здобував довіру, і щойно (починаючи з підверсії 8.2.5) досяг бета-стабільності.

Migrate API може вам запропонувати:

Модулі у складі Migrate API

Зараз це «велика трійка», хоча спочатку була «велика двійка» — до виходу підверсії Drupal 8.1, коли «компанію» доповнив модуль Migrate UI. Отже, ось вони:

  • модуль Migrate забезпечує основний функціонал API для апгрейду
  • модуль Migrate Drupal пропонує спеціальні конфігурації для переходу з Drupal 6 на Drupal 8 та з Drupal 7 на Drupal 8
  • модуль Migrate Drupal UI має зручний інтерейс, який можна використовувати замість Drush

Додаткові модулі для роботи з Migrate API

Це ще не все, бо процес міграції з Migrate API можна ще більше вдосконалити, використовуючи додаткові контрибні модулі. Ось декілька з них.

Модуль Migrate Tools пропонує інтерфейс для списку міграцій та показу повідомлень, ну і, звісно, основні міграційні команди Drush:

  • drush migrate-status
  • drush migrate-import
  • drush migrate-rollback
  • drush migrate-stop
  • drush migrate-reset-status
  • drush migrate-messages

Модуль Migrate upgrade раніше мав інтерфейс, який став частиною ядра, тож зараз основне призначення модуля — забезпечувати важливі команди Drush для апгрейду між різними версіями Drupal’а та для відкату змін у разі необхідності:

  • drush migrate-upgrade
  • drush migrate-upgrade-rollback

За допомогою модуля Migrate Plus ви можете особливо вдосконалити кастомну міграцію. Він пропонує додатковий функціонал, зокрема, для групування міграцій, а також плагіни для парсингу XML та JSon, які імпортують дані з файлових джерел.

Модуль Migrate Manifest дозволить вам запускати вибрані міграції, визначені у manifest-файлі.

Ну і, наостанок, якщо ви зацікавлені в переході з Wordpress на Drupal (перегляньте порівняння), для вас є модуль Wordpress migrate, який допоможе експортувати Wordpres-файли і перенести їх на Drupal.

Шаблони міграції

Багато роботи уже зроблено для полегшення процесу міграції! В Drupal 8 є багато готових шаблонів міграції для ядра, що зберігаються у YAML-файлах. У випадку з контрибними модулями також можуть бути деякі готові файли, тож варто перевірити це. Але що стосується кастомного функціоналу, готуйтеся створювати власні кастомні міграційні файли. Хоча завжди можна, як варіант, доручити це професійним розробникам.

Процес міграції за допомогою Migrate API з Drupal 7 або 6 на Drupal 8

  • Перед апгрейдом рекомендується свіжа інсталяція Drupal 8, адже це суттєво полегшить процес.
  • Потрібно «розповісти» Drupal’у, як зв’язатися з вихідною базою даних, наприклад, у файлі settings.php.
  • Увімкніть всі модулі, які потрібно перенести, на обох сайтах (тому, з якого переносите, і тому, на який переносите).
  • Запустіть міграцію за допомогою Drush або інтерфейсу, як вам зручніше.
  • Перегляньте результат.
  • При необхідності зробіть відкат змін.
  • Після цього деінсталюйте модулі міграції.
  • Готово!

Бажаємо ідеально гладенького процесу міграції за допомогою Migrate API, а також — чудового старту для вашого сайту на Drupal 8! Апгрейди на «вісімку» стали такою популярною послугою, особливо після завершення підтримки Drupal 6, що ми вже ідеально відточили майстерність у цій справі. Тож яким би складним не був ваш сайт та скільки б там не було кастомного функціоналу, з нами все пройде бездоганно. Міграція може початися з маленького кроку — напишіть нам просто зараз ;) 

2 votes, Рейтинг: 4

Також по темі

1

Приємно бачити, як Drupal 8 виконує свою обіцянку бути зручнішим у всьому! Ми вже обговорювали, як він поважає...

2

Називаючи Drupal “фреймворком для керування контентом”, варто згадати один модуль, який чудово передає саму суть цього процесу — Views, однозначно. Тож ми раді включити його до нашої колекції...

3

Правила всюди: в школі, на роботі, вони супроводжують нас протягом усього життя... Та що, якщо ми скажемо вам, що є певні Rules і в Drupal 8? Проте, це зовсім не те, про що ви подумали :)

4

Очевидно, Друпал і надалі продовжить переносити модулі із сьомої на восьму версію і ми не скаржимось. Ах, стільки інформації для досліджень, стільки всього, щоб вам розповісти. Цього разу ми...

5

Іноді складно уникнути помилок 404, і вони можуть значно сповільнювати роботу сайту. На щастя, є модуль the Fast 404 у Drupal 8! Читайте...

Subscribe to our blog updates