Integración de CI/CD.
El contenido de DXPR Builder se guarda en campos de texto y entidades de configuración de Drupal. Esta página explica cómo incluir el contenido de DXPR Builder en tu canalización de CI/CD y tus flujos de despliegue.
Almacenamiento de contenido
DXPR Builder guarda sus datos en la base de datos y en la configuración:
| Tipo de datos | Almacenamiento | Método de despliegue |
|---|---|---|
| Contenido de página | Valores de campo de texto (base de datos) | Sincronización o migración de contenido |
| Plantillas de página | Entidades de configuración | Exportación/importación de configuración |
| Plantillas de usuario | Entidades de configuración | Exportación/importación de configuración |
| Ajustes | Configuración; guarda la clave de producto en Configuration storage | Exportación/importación de configuración una vez que la clave está en una entidad Key; ver abajo |
| Perfiles de usuario | Entidades de configuración | Exportación/importación de configuración |
| Clave de producto | Ajustes, o una entidad Key que contiene la clave o apunta a ella | Por entorno; ver abajo |
Gestión de la configuración
Los ajustes y plantillas de DXPR Builder son configuración de Drupal. Despliégalos con la gestión de configuración estándar de Drupal.
Exportación
drush config:export
Esto exporta estos archivos de configuración de DXPR Builder:
dxpr_builder.settings.ymldxpr_builder.dxpr_builder_profile.*.ymldxpr_builder.page_template.*.ymldxpr_builder.user_template.*.ymlkey.key.dxpr_builder_jwt.yml, o la entidad Key elegida para la clave de producto
No publiques dxpr_builder.settings.yml mientras la clave de producto esté
en él; consulta Claves de producto abajo.
Importación
drush config:import
Ejemplo de canalización de CI
drush deploy ejecuta las actualizaciones de base de datos, importa la configuración y
reconstruye las cachés en el orden correcto. Las versiones de DXPR Builder convierten
contenido en sus actualizaciones de base de datos, así que ejecútalas en cada despliegue.
deploy:
script:
- drush deploy -y
Despliegue de contenido
El contenido de página (el HTML en campos de texto) es contenido de base de datos, no configuración. Opciones para desplegar contenido entre entornos:
Módulo Default Content
Exporta contenido como archivos YAML e impórtalos en el entorno de destino.
Content Synchronization
Usa el módulo Content Synchronization (content_sync) para exportar
e importar entidades de contenido.
Sincronización de base de datos
Copia la base de datos de un entorno a otro:
drush sql:sync @source @target
Aspectos propios de cada entorno
Rutas de archivos
El contenido de DXPR Builder referencia imágenes subidas por ruta de archivo. Sincroniza el directorio de archivos entre entornos.
Claves de producto
Cada entorno necesita una clave de producto válida. Con el
Configuration storage predeterminado, dxpr_builder.settings.yml guarda esa
clave en texto claro, como json_web_token. Antes de que el archivo llegue a
tu repositorio:
- Crea una Key cuyo proveedor lea una variable de entorno o un
archivo, en Configuration > System > Keys
(
/admin/config/system/keys). - En DXPR Studio > DXPR Builder > General Settings
(
/admin/dxpr_studio/dxpr_builder/settings), fija Storage method en Key module, elige esa clave en Key y haz clic en Save settings. Esto vacíajson_web_token. - Exporta la configuración de nuevo y comprueba que
dxpr_builder.settings.ymlya no contiene la clave.
Una Key con el proveedor Configuration guarda el valor en su propio archivo exportado, así que tampoco es seguro publicarlo.
¿Qué sigue?
Staging de contenidos entre entornos para seguir explorando DXPR Builder.