Características versus gestión de configuración


8

Estoy construyendo un sitio Drupal 8 y he investigado cada vez que debo usar la Gestión de configuración o las Características para exportar la configuración e incluirla en mi perfil. Para exportar e importar la configuración con Configuration Management de un sitio a otro, los sitios deben tener el mismo UUID. Significa que tienen que ser un clon el uno del otro. Hay dos formas de lograr esto:

  1. Clone la base de datos de un sitio a otro para tener el mismo UUID
  2. Modifique programáticamente el UUID para que coincida con el que está en la configuración

El sitio que voy a construir tendrá su propia instalación de perfil y mi intención es mantener la configuración o las características dentro del perfil. Ya he creado la instalación de mi perfil, pero ahora tengo que incluir la configuración de una manera que no dependa del UUID para poder:

  1. Acelere un nuevo entorno de desarrollo utilizando la instalación de perfiles
  2. Desarrollar nuevas funcionalidades.
  3. Exportar nuevas funcionalidades en el perfil
  4. Impleméntelo para producir y aplicar nuevas funcionalidades sin volver a instalar el sitio

¿Cómo puedo exportar la configuración y agregarla a mi perfil? ¿Debo usar la Gestión de configuración y eliminar manualmente el UUID o debo usar Características y agregarlo a mi perfil?

Al usar el módulo Funciones, no puedo establecer el destino de mis funciones. Me gustaría poner todas mis funciones en profiles / my_profile / feature. Cuando lo creo, no puedo establecer un destino, por lo que se guarda en módulos / personalizado. Lo moví manualmente de módulos / personalizado a perfil / mi_perfil / características. Si lo actualizo, no actualizará las funciones que moví, sino que creará una nueva función con el mismo nombre en módulos / personalizados. ¿Cómo puedo configurar un destino personalizado?

Respuestas:


4

Aconsejaría usar Características. Esto permitiría no solo exportar la funcionalidad y dividirla en compartimentos mucho más fácil, sino que también podría tener la capacidad de incorporar funciones más tarde desde una fuente externa y / o usar ciertas funciones aquí en un sitio diferente que no comenzó con su perfil de instalación .

Actualmente hay un problema para admitir la generación de rutas personalizadas para las características: https://www.drupal.org/node/2693123

Cuando se aborde eso, puede generar las características para el camino de su elección. Por ahora, puede generar el resultado, extraerlo de módulos / personalizado y colocar el módulo de características generado en su perfil.


Estoy tratando de usar funciones, pero lo genera en módulos / personalizados, mientras que me gustaría mantenerlo en profile / my_profile / my_feature. Puedo generarlo y moverlo, pero cuando quiero actualizarlo lo vuelve a colocar en módulos / personalizado. ¿Cómo puedo configurar un destino personalizado?
Tyler Durden

Presentaría un problema en la cola Características (creo que ya existe uno para la anulación del destino). Mientras tanto, generarlos y colocarlos en su perfil. Había hecho esto anteriormente para Drupal 7.
Kevin

He encontrado el problema: drupal.org/node/2693123 . En este momento lo estoy generando en módulos / personalizado y dejándolo allí, cuando tenga mi primera versión, lo moveré a profile / _myprofile_name / feature. Si expande su respuesta con más instrucciones, puedo darle la recompensa.
Tyler Durden

1

Agregar información de contraargumentos para asimilación / consideración:

El mantenedor del módulo de características Mike Potter está alentando a la gente a dejar de usar el módulo de características como ...

El módulo de características ya no es necesario y no debe usarse para implementar la configuración. Sin embargo, Features todavía proporciona una poderosa interfaz de usuario y un sistema de complementos para administrar la configuración y, en combinación con nuevos módulos como Config Actions, finalmente podría lograr su sueño de empaquetar la funcionalidad reutilizable.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.