Aller au contenu principal
loading

Export de la configuration sur Drupal 8

POSTÉ DANS Drupal 8 TAGS Drupal 8 AUTEUR herve COMMENTAIRES 1

Introduction

Alors que le couple Features / Strongarm était la référence sous Drupal 7 pour l'export des configurations (Types de contenus, champs associés, configuration du site, ...), un moyen beaucoup plus pratique est disponible sous Drupal 8 : le CMI (Configuration Management Initiative).

 

Accessible via les URL /admin/config/development/configuration (synchronisation des configurations), /admin/config/development/configuration/single/import (import d'une configuration), /admin/config/development/configuration/full/import (import total) et /admin/config/development/configuration/full/export (export), il permet de générer ou d'importer un fichier YAML pour chaque type de contenu, chaque champ, chaque configuration d'administration mais également pour chaque display d'un type de contenu.

 

Avantages du CMI par rapport à Features

Pour rappel, l'export sous Drupal 7 via Features / Strongarm générait un module avec toute la configuration dedans. Un des gros problèmes était le travail d'équipe et la mise à jour de ces features quand 2 personnes voulaient modifier une vue par exemple.

Outre l'écrasement possible des modifications de son collègue, tous ceux qui travaillent à plusieurs sur un projet et qui utilisent un outils de versionning type GIT ont certainement dû faire l'expérience de nombreux problèmes de conflits sous GIT.

Le CMI et le format YAML permettent de pallier à ces problèmes, en générant un fichier par élément à exporter, facilement lisible par un humain, et que les outils de versionning n'ont pas de mal à merger.

 

Inconvénients du CMI par rapport à Features

Il n'y a malheureusement pas que des avantages à utiliser le CMI, et vous allez vite comprendre lesquels si vous travaillez sur un gros projet.

Le fait d'avoir un fichier par display et par type de contenu par exemple, plus 2 par champ (un pour le stockage, l'autre pour le display), plus un par vue, ... fait que vous allez vite vous retrouver avec des centaines voire des milliers de fichiers stockés dans un répertoire. Si vous utilisez un IDE, le scroll à travers les éléments du projet ou l'indexation des fichiers prendra pas mal de temps.

De plus, la synchronisation ou l'export total de la configuration prendront beaucoup de temps, à moins qu'ils ne soient tout simplement plus possible suivant la configuration de votre serveur...

 

Export partiel de la configuration

Cependant, pour pallier à ces problèmes d'export, il y a un module très utile : Config partial export (https://www.drupal.org/project/config_partial_export).

Comme son nom l'indique, il permet d'exporter seulement certaines configurations en vous indiquant celles qui ont été modifiées depuis le dernier export.

Fichier attaché Taille
config_partial_export-8.x-1.4.zip 16.02 Ko


1 commentaire