Інтеграція CI/CD.

Вивчення DXPR BuilderКерування сайтомЗапуск у продакшні

Вміст DXPR Builder зберігається в текстових полях Drupal і сутностях конфігурації. Ця сторінка пояснює, як включити вміст DXPR Builder у свій CI/CD-конвеєр і робочі процеси розгортання.

Зберігання вмісту

DXPR Builder зберігає свої дані в базі даних і в конфігурації:

Тип даних Сховище Метод розгортання
Вміст сторінок Значення текстових полів (база даних) Синхронізація або міграція вмісту
Шаблони сторінок Сутності конфігурації Експорт/імпорт конфігурації
Шаблони користувачів Сутності конфігурації Експорт/імпорт конфігурації
Налаштування Конфігурація; тримає ключ продукту в Configuration storage Експорт/імпорт конфігурації, коли ключ у сутності Key; див. нижче
Профілі користувачів Сутності конфігурації Експорт/імпорт конфігурації
Ключ продукту Налаштування або сутність Key, що тримає ключ чи вказує на нього На середовище; див. нижче

Керування конфігурацією

Налаштування та шаблони DXPR Builder це конфігурація Drupal. Розгортайте їх стандартним керуванням конфігурацією Drupal.

Експорт

drush config:export

Це експортує ці файли конфігурації DXPR Builder:

  • dxpr_builder.settings.yml
  • dxpr_builder.dxpr_builder_profile.*.yml
  • dxpr_builder.page_template.*.yml
  • dxpr_builder.user_template.*.yml
  • key.key.dxpr_builder_jwt.yml або сутність Key, вибрана для ключа продукту

Не комітьте dxpr_builder.settings.yml, поки ключ продукту в ньому; див. Ключі продукту нижче.

Імпорт

drush config:import

Приклад CI-конвеєра

drush deploy запускає оновлення бази даних, імпортує конфігурацію та перебудовує кеші в правильному порядку. Релізи DXPR Builder конвертують вміст у своїх оновленнях бази даних, тож запускайте їх під час кожного розгортання.

deploy:
  script:
    - drush deploy -y

Розгортання вмісту

Вміст сторінок (HTML у текстових полях) це вміст бази даних, а не конфігурація. Параметри розгортання вмісту між середовищами:

Модуль Default Content

Експортуйте вміст як файли YAML та імпортуйте їх на цільовому середовищі.

Content Synchronization

Використовуйте модуль Content Synchronization (content_sync), щоб експортувати та імпортувати сутності вмісту.

Синхронізація бази даних

Скопіюйте базу даних з одного середовища в інше:

drush sql:sync @source @target

Міркування для кожного середовища

Шляхи файлів

Вміст DXPR Builder посилається на завантажені зображення шляхом файла. Синхронізуйте теку файлів між середовищами.

Ключі продукту

Кожне середовище потребує дійсного ключа продукту. За типового Configuration storage dxpr_builder.settings.yml тримає цей ключ відкритим текстом, як json_web_token. Перш ніж файл піде до вашого репозиторію:

  1. Створіть Key, чий провайдер читає змінну середовища або файл, у Configuration > System > Keys (/admin/config/system/keys).
  2. У DXPR Studio > DXPR Builder > General Settings (/admin/dxpr_studio/dxpr_builder/settings) установіть Storage method у Key module, виберіть цей ключ у Key і натисніть Save settings. Це очищує json_web_token.
  3. Знову експортуйте конфігурацію й перевірте, що dxpr_builder.settings.yml більше не містить ключа.

Key із провайдером Configuration зберігає значення у власному експортованому файлі, тож його теж небезпечно комітити.

Що далі?

Стейджинг вмісту між середовищами, щоб продовжити ознайомлення з DXPR Builder.