Особенности и управление конфигурацией


8

Я создаю сайт на Drupal 8, и я провел некоторые исследования, когда мне нужно использовать Управление конфигурациями или Функции, чтобы экспортировать конфигурацию и включить ее в свой профиль. Чтобы экспортировать и импортировать конфигурацию с помощью Configuration Management с одного сайта на другой, сайты должны иметь одинаковый UUID. Это значит, что они должны быть клоном друг друга. Есть два способа добиться этого:

  1. Клонируйте БД с одного сайта на другой, чтобы получить тот же UUID
  2. Программно изменить UUID, чтобы он соответствовал конфигурации

Сайт, который я собираюсь создать, будет иметь собственную установку профиля, и я намерен сохранить конфигурацию или функции в профиле. Я уже создал свой профиль установки, но теперь я должен включить конфигурацию так, чтобы она не зависела от UUID, чтобы я мог:

  1. Раскрутите новую среду разработки с помощью установки профиля
  2. Разработка новых функций
  3. Экспорт новых функций в профиле
  4. Разверните его в Prod и примените новые функции без переустановки сайта.

Как я могу экспортировать конфигурацию и добавить ее в свой профиль? Должен ли я использовать Управление конфигурациями и вручную удалить UUID, или я должен использовать Функции и добавить его в свой профиль?

Используя модуль «Функции», я не могу указать место назначения для своих функций. Я хотел бы разместить все свои функции в профилях / my_profile / feature. Когда я его создаю, я не могу указать пункт назначения, поэтому он сохраняется в модуле / custom. Я вручную переместил его из модулей / custom в профиль / my_profile / features. Если я обновлю его, он не будет обновлять функции, которые я переместил, но вместо этого создаст новую функцию с тем же именем в файле modules / custom. Как я могу настроить пользовательский пункт назначения?

Ответы:


4

Я бы посоветовал использовать функции. Это позволило бы не только экспортировать функциональные возможности и разделить их на части намного проще, но вы также могли бы иметь возможность позже вводить функции из внешнего источника и / или использовать определенные функции здесь на другом сайте, который не начинался с вашего профиля установки. ,

В настоящее время существует проблема поддержки создания пользовательских путей для компонентов: https://www.drupal.org/node/2693123

Когда это решено, вы можете генерировать функции по вашему выбору. На данный момент вы можете сгенерировать результат, извлечь его из модулей / пользовательских и поместить сгенерированный функциональный модуль в свой профиль.


Я пытаюсь использовать функции, но он генерирует их для модулей / custom, в то время как я хотел бы сохранить их в профиле / my_profile / my_feature. Я могу сгенерировать и переместить его, но затем, когда я хочу обновить, он снова помещает его в модули / custom. Как я могу установить пользовательский пункт назначения?
Тайлер Дерден

Я хотел бы подать проблему в очередь функций (я думаю, что уже существует для переопределения назначения). А пока сгенерируйте их и разместите в своем профиле. Я делал это ранее для Drupal 7.
Кевин

Я нашел проблему: drupal.org/node/2693123 . На данный момент я создаю его в модуле / custom и оставляю там, когда у меня будет первый релиз, я переместу его в профиль / _myprofile_name / feature. Если вы расширите свой ответ дополнительными инструкциями, я могу дать вам награду.
Тайлер Дерден

1

Добавление некоторой контраргументной информации для ассимиляции / рассмотрения:

Сопровождающий модуль функций Майк Поттер призывает людей прекратить использование модуля функций в качестве ...

Функциональный модуль больше не нужен и не должен использоваться для развертывания конфигурации. Тем не менее, Feature по-прежнему предоставляет мощный пользовательский интерфейс и систему плагинов для управления конфигурацией, и в сочетании с новыми модулями, такими как Config Actions, он может, наконец, реализовать свою мечту о функциональности многоразового использования пакетов.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.