Керування конфігураціями в Drupal 8 — блог Drudesk
050 640 98 44
support@drudesk.com

Drupal 8 та керування конфігураціями: “файловий” підхід

Справжні дива мультимовності, блискавичне редагування, безпрецедентне дотримання стандартів веб-доступності, краще відображення на мобільних пристроях… Дивлячись на все це і багато іншого, легко повірити, що в Drupal 8 і справді здійснюються мрії! Трохи магії... і значні зусилля з боку невтомної Drupal-спільноти втілили в життя ще одну мрію друпалістів. Це стосується питання перенесення конфігурацій між різними середовищами сайту.

Переносьте конфігурації правильно: для цього чудово підходять файли

Під час роботи з різними середовищами сайту (відомими як “девелопмент”, “стейджинг”, “продакшн”), вам потрібно портувати дані між ними. Таким чином забезпечується їхня синхронізація та оновлення.

Іноді (або часто) вам доводиться вносити зміни в конфігурації. Це може включати в себе контент-типи, філди, налаштування модулів, словники таксономії, менюшки і багато іншого — фактично все, що можна налаштувати в адміністративному інтерфейсі, окрім контенту. Отже, вам потрібно “доставити” ці зміни в інше середовище. І найефективніший спосіб перенести їх — це зберегти за допомогою файлів.

Система керування конфігураціями

“Файловий” підхід до керування конфігураціями — дуже чіткий і професійний. І саме цей підхід лежить в основі системи керування конфігураціями Drupal 8. Полегшити воркфлоу з середовища “дев” до “лайв” або навпаки — одна з цілей, що стояла перед D8. Для цього і з’явилася ініціатива CMI (Configuration Management Initiative).

Успішно створена система керування конфігураціями справді заощаджує час. Вона дозволяє легко відслідковувати зміни та застосовувати контроль версій. Для роботи в ній є зручний інтерфейс.

Суть процесу: дані конфігурації експортуються в YAML-файли з бази даних одного середовища, розгортаються на іншому та імпортуються в його базу даних.

Можна також використовувати команди Drush для імпорту і експорту. Є можливість автоматизації процесів.

Модуль Features та його секрети

До створення системи керування конфігураціями, в подібних цілях використовувався модуль Features, хоча це не було його основним призначенням. Ймовірно, цей модуль, покращений в Drupal 8, буде й надалі використовуватись деякими розробниками завдяки розширеним можливостям.

Наприклад, CMI може лише “доставляти” конфігурації з однієї версії сайту на іншу, тобто їхні дані UUID повинні збігатися. А модуль Features робить можливою роботу з різними сайтами.

Він також дозволяє краще структурувати великий об‘єм конфігурацій. Замість безлічі YAML-файлів, ви можете отримати все це в погрупованому вигляді — в “пакетах фіч”. Модуль Features запропонує вам це на основі аналізу залежностей.

І наостанок

Отже, така вона — філософія “файлового” керування конфігураціями. Використовуйте її на благо вашого сайту, а якщо вам потрібна будь-яка допомога з ним, завжди покладайтеся на службу підтримки сайтів Drudesk!