CI/CD-integratie.
DXPR Builder-inhoud wordt opgeslagen in Drupal-tekstvelden en configuratie-entiteiten. Deze pagina legt uit hoe je DXPR Builder-inhoud opneemt in je CI/CD-pipeline en deploymentworkflows.
Inhoudsopslag
DXPR Builder slaat zijn data op in de database en in configuratie:
| Gegevenstype | Opslag | Deploymentmethode |
|---|---|---|
| Paginainhoud | Tekstveldwaarden (database) | Inhoudssynchronisatie of migratie |
| Paginasjablonen | Config-entiteiten | Config-export/import |
| Gebruikerssjablonen | Config-entiteiten | Config-export/import |
| Instellingen | Config; bevat de productsleutel onder Configuration storage | Config-export/import zodra de sleutel in een Key-entiteit staat; zie hieronder |
| Gebruikersprofielen | Config-entiteiten | Config-export/import |
| Productsleutel | Instellingen, of een Key-entiteit die de sleutel bevat of ernaar verwijst | Per omgeving; zie hieronder |
Configuratiebeheer
Instellingen en sjablonen van DXPR Builder zijn Drupal-configuratie. Deploy ze met standaard Drupal-configuratiebeheer.
Exporteren
drush config:export
Dit exporteert deze DXPR Builder-configbestanden:
dxpr_builder.settings.ymldxpr_builder.dxpr_builder_profile.*.ymldxpr_builder.page_template.*.ymldxpr_builder.user_template.*.ymlkey.key.dxpr_builder_jwt.yml, of de Key-entiteit die voor de productsleutel is geselecteerd
Commit dxpr_builder.settings.yml niet zolang de productsleutel
erin staat; zie Productsleutels hieronder.
Importeren
drush config:import
CI-pipelinevoorbeeld
drush deploy draait de database-updates, importeert configuratie en
herbouwt caches in de juiste volgorde. DXPR Builder-releases converteren
inhoud in hun database-updates, dus draai die bij elke deploy.
deploy:
script:
- drush deploy -y
Contentdeployment
Paginainhoud (de HTML in tekstvelden) is database-inhoud, geen configuratie. Opties voor het deployen van inhoud tussen omgevingen:
Module Default Content
Exporteer inhoud als YAML-bestanden en importeer ze op de doelomgeving.
Content Synchronization
Gebruik de module Content Synchronization (content_sync) om
inhoudsentiteiten te exporteren en importeren.
Databasesynchronisatie
Kopieer de database van de ene omgeving naar de andere:
drush sql:sync @source @target
Omgevingsspecifieke overwegingen
Bestandspaden
DXPR Builder-inhoud verwijst met bestandspaden naar geüploade afbeeldingen. Synchroniseer de files-map tussen omgevingen.
Productsleutels
Elke omgeving heeft een geldige productsleutel nodig. Onder de standaard
Configuration storage bevat dxpr_builder.settings.yml die
sleutel als leesbare tekst, als json_web_token. Voordat het bestand je
repository in gaat:
- Maak een Key waarvan de provider een omgevingsvariabele of een
bestand leest, bij Configuration > System > Keys
(
/admin/config/system/keys). - Zet bij DXPR Studio > DXPR Builder > General Settings
(
/admin/dxpr_studio/dxpr_builder/settings) Storage method op Key module, kies die key onder Key en klik op Save settings. Dit wistjson_web_token. - Exporteer de configuratie opnieuw en controleer of
dxpr_builder.settings.ymlde sleutel niet meer bevat.
Een Key met de provider Configuration bewaart de waarde in zijn eigen geëxporteerde bestand, dus die is evenmin veilig om te committen.
Wat nu?
Contentstaging tussen omgevingen om DXPR Builder verder te verkennen.