Integrazione CI/CD.

Learn DXPR BuilderManage the siteNaar productie

I contenuti di DXPR Builder sono memorizzati nei campi di testo e nelle entità di configurazione di Drupal. Questa pagina spiega come includere i contenuti DXPR Builder nella tua pipeline CI/CD e nei flussi di distribuzione.

Archiviazione dei contenuti

DXPR Builder memorizza i suoi dati nel database e nella configurazione:

Tipo di dati Archiviazione Metodo di distribuzione
Contenuto delle pagine Valori dei campi di testo (database) Sincronizzazione o migrazione dei contenuti
Modelli di pagina Entità di configurazione Esportazione/importazione della configurazione
Modelli utente Entità di configurazione Esportazione/importazione della configurazione
Impostazioni Configurazione; contiene la chiave prodotto in Configuration storage Esportazione/importazione della configurazione una volta che la chiave è in un’entità Key; vedi sotto
Profili utente Entità di configurazione Esportazione/importazione della configurazione
Chiave prodotto Impostazioni, oppure un’entità Key che contiene la chiave o vi punta Per ambiente; vedi sotto

Gestione della configurazione

Le impostazioni e i modelli di DXPR Builder sono configurazione Drupal. Distribuiscili con la gestione standard della configurazione Drupal.

Esportazione

drush config:export

Questo esporta questi file di configurazione di 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, oppure l’entità Key scelta per la chiave prodotto

Non fare il commit di dxpr_builder.settings.yml finché contiene la chiave prodotto; vedi Chiavi prodotto sotto.

Importazione

drush config:import

Esempio di pipeline CI

drush deploy esegue gli aggiornamenti del database, importa la configurazione e ricostruisce le cache nell’ordine giusto. Le release di DXPR Builder convertono i contenuti nei loro aggiornamenti del database, quindi eseguili a ogni distribuzione.

deploy:
  script:
    - drush deploy -y

Distribuzione dei contenuti

Il contenuto delle pagine (l’HTML nei campi di testo) è contenuto del database, non configurazione. Opzioni per distribuire i contenuti tra ambienti:

Modulo Default Content

Esporta i contenuti come file YAML e importali nell’ambiente di destinazione.

Content Synchronization

Usa il modulo Content Synchronization (content_sync) per esportare e importare entità di contenuto.

Sincronizzazione del database

Copia il database da un ambiente all’altro:

drush sql:sync @source @target

Considerazioni per ambiente

Percorsi dei file

I contenuti di DXPR Builder fanno riferimento alle immagini caricate tramite percorso file. Sincronizza la directory dei file tra gli ambienti.

Chiavi prodotto

Ogni ambiente richiede una chiave prodotto valida. Con il valore predefinito di Configuration storage, dxpr_builder.settings.yml contiene quella chiave in chiaro, come json_web_token. Prima che il file finisca nel tuo repository:

  1. Crea una chiave il cui provider legga una variabile d’ambiente o un file, in Configuration > System > Keys (/admin/config/system/keys).
  2. In DXPR Studio > DXPR Builder > General Settings (/admin/dxpr_studio/dxpr_builder/settings), imposta Storage method su Key module, scegli quella chiave in Key e fai clic su Save settings. Questo azzera json_web_token.
  3. Esporta di nuovo la configurazione e verifica che dxpr_builder.settings.yml non contenga più la chiave.

Una chiave con il provider Configuration memorizza il valore nel suo file esportato, quindi non è sicuro fare il commit nemmeno di quello.

Prossimi passi

Content staging tra ambienti e continua a esplorare DXPR Builder.