Config Suite

Un conjunto de mejoras al sistema de gestión de configuración de Drupal que elimina la verificación del UUID del sitio y proporciona funcionalidad de importación/exportación automática.

config_suite
161 sites
42
drupal.org

Install

Drupal 11, 10, 9 v2.0.5
composer require 'drupal/config_suite:^2.0'

Overview

Config Suite mejora el sistema de gestión de configuración del núcleo de Drupal para facilitar el trabajo con configuración en un flujo de trabajo controlado por versiones. El módulo aborda puntos problemáticos comunes al compartir o reutilizar configuración entre diferentes sitios Drupal.

La característica principal elimina la validación del UUID del sitio durante la importación de configuración, que normalmente impide importar configuración de una instalación diferente de Drupal. Esto elimina el error "Site UUID in source storage does not match the target storage" y permite a los desarrolladores que trabajan en diferentes copias del mismo sitio compartir configuración sin soluciones alternativas.

Además, Config Suite proporciona funciones de automatización que pueden exportar automáticamente los cambios de configuración a la carpeta sync cada vez que se guarda un formulario, e importar automáticamente los cambios de configuración pendientes cuando un administrador accede al sitio. Estas funciones agilizan el flujo de trabajo de configuración en entornos de desarrollo.

Features

  • Omite la validación del UUID del sitio durante la importación de configuración, permitiendo compartir configuración entre diferentes instalaciones de Drupal
  • Exportación automática de configuración a la carpeta sync cuando se guarda cualquier formulario de configuración
  • Importación automática de configuración cuando los administradores acceden al sitio y la carpeta sync ha sido actualizada
  • Exporta toda la configuración activa a la carpeta sync al instalar el módulo
  • Soporta colecciones de configuración para una sincronización completa de configuración

Use Cases

Flujo de trabajo en equipo con múltiples desarrolladores

Cuando múltiples desarrolladores trabajan en el mismo proyecto Drupal con instalaciones locales separadas, cada sitio tiene un UUID diferente. Sin Config Suite, importar configuración del trabajo de un colega fallaría con el error de desajuste de UUID. Config Suite permite a los desarrolladores compartir libremente archivos de configuración a través de control de versiones sin conflictos de UUID.

Migración o clonación de sitios

Al crear un nuevo sitio basado en configuración de un sitio existente, o al migrar configuración entre entornos de staging/producción con diferentes UUID, Config Suite permite importar la configuración sin manipulación manual del UUID o soluciones alternativas.

Flujo de trabajo de desarrollo automatizado

Habilita tanto la importación como la exportación automática para crear una experiencia de desarrollo fluida. Cuando realizas cambios de configuración a través de la interfaz, se escriben automáticamente en la carpeta sync para hacer commit inmediato al control de versiones. Cuando se obtienen cambios de configuración de un colega desde el repositorio, se aplican automáticamente en tu próxima carga de página.

Reutilización de configuración entre proyectos

Crea fragmentos de configuración reutilizables que pueden aplicarse a cualquier sitio Drupal independientemente de su UUID. Esto es particularmente útil para agencias o desarrolladores que mantienen configuraciones similares en múltiples sitios de clientes.

Tips

  • Config Suite es particularmente útil durante el desarrollo, pero considera deshabilitar las funciones automáticas en entornos de producción donde los cambios de configuración deben ser más controlados.
  • La función de importación automática solo se ejecuta para usuarios con el rol de administrador por razones de seguridad.
  • Al instalar el módulo, toda la configuración activa se exporta a la carpeta sync, asegurando que comiences con una línea base de configuración completa.
  • Un video de introducción a Config Suite está disponible de BadCamp: https://www.youtube.com/watch?time_continue=112&v=02IJGgGPBAw

Technical Details

Admin Pages 1
Importa y exporta tu configuración, o automatiza el flujo de trabajo de configuración. /admin/config/config_suite/admin_settings

Configura los ajustes de importación y exportación automática de configuración para Config Suite. Esta página te permite habilitar o deshabilitar la sincronización automática de configuración entre el almacenamiento activo y la carpeta sync.

Permissions 1
Administrar ajustes de Config Suite

Permite a los usuarios acceder y modificar los ajustes de configuración de Config Suite en la página de administración. Requerido para cambiar los ajustes de importación/exportación automática.

Hooks 2
hook_install

Exporta toda la configuración activa a la carpeta sync al instalar el módulo, asegurando que la carpeta sync se llene inmediatamente con la configuración actual.

hook_help

Proporciona texto de ayuda para el módulo en la página de ayuda.

Troubleshooting 3
Los cambios de configuración no se importan automáticamente

Asegúrate de que el ajuste de importación automática esté habilitado, y que el usuario conectado tenga el rol 'administrator'. La importación automática solo se activa para usuarios administradores.

Los cambios de configuración no se exportan automáticamente

Verifica que la exportación automática esté habilitada en los ajustes de Config Suite. También asegúrate de que la carpeta sync tenga permisos de escritura para el servidor web.

Mensajes de advertencia sobre archivos de configuración no encontrados en colecciones

Estas advertencias pueden aparecer en los registros cuando las colecciones de configuración no contienen el elemento de configuración específico que se está guardando. Esto es generalmente inofensivo e indica que la configuración no existe en esa colección particular.

Security Notes 3
  • La función de importación automática solo se ejecuta para usuarios con el rol de administrador, previniendo cambios de configuración no autorizados.
  • Este módulo omite la verificación del UUID del sitio, que es una función de seguridad en el núcleo de Drupal. Aunque es conveniente para el desarrollo, entiende que esto elimina una protección diseñada para prevenir sobrescrituras accidentales de configuración entre diferentes sitios.
  • Considera las implicaciones de seguridad antes de habilitar este módulo en sitios de producción, ya que la importación automática de configuración podría ser potencialmente explotada si un atacante obtiene acceso de escritura a la carpeta sync.