Integración de CI/CD.

Learn DXPR BuilderManage the siteNaar productie

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.yml
  • dxpr_builder.dxpr_builder_profile.*.yml
  • dxpr_builder.page_template.*.yml
  • dxpr_builder.user_template.*.yml
  • key.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:

  1. Crea una Key cuyo proveedor lea una variable de entorno o un archivo, en Configuration > System > Keys (/admin/config/system/keys).
  2. 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ía json_web_token.
  3. Exporta la configuración de nuevo y comprueba que dxpr_builder.settings.yml ya 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.