Travail avec les configurations en utilisant l’interface utilisateur de Drupal
Voici un exemple simple démontrant comment le nom du site peut être configuré dans un environnement et déployé dans un autre. Cet exemple inclut le téléchargement et le téléversement manuel des fichiers de configuration au format tar.gz, mais il est également possible de conserver le répertoire de synchronisation de votre site sous contrôle de version et de synchroniser de cette manière.
1. Installez Drupal 8. Nous appellerons ce site « Production ».
2. Faites une copie de ce site à une autre URL — ce sera « Développement ». Faites une copie en utilisant le même code source, le même répertoire de fichiers et le même dump de base de données du site fonctionnel. Gardez à l’esprit que le système de configuration est conçu pour synchroniser les paramètres entre des copies du même site — cela signifie que l’UUID doit correspondre — vous devez toujours commencer par faire une copie complète du site et de la base de données (mais vous n’avez pas besoin de le faire avant de commencer à ajouter du contenu à votre site). Dans Drupal 7, vous n’aviez besoin que du dump de la base de données et des fichiers téléversés, dans Drupal 8 d’autres parties du répertoire des fichiers sont pertinentes, y compris les fichiers de configuration et PHP.
Une fois terminé, il sera possible d’installer un nouveau site à partir de la configuration existante, donc copier le site sera aussi simple qu’installer un nouveau site avec la configuration exportée. Tant que ce problème n’est pas résolu, vous aurez besoin d’une copie complète du site.
3. Après la copie, modifiez le fichier settings.php dans la nouvelle copie (Développement) et configurez les détails MySQL dans $database.
4. Vérifiez la propriété des fichiers/répertoires et les permissions (Drupal peut se plaindre que votre répertoire de synchronisation n’est pas accessible en écriture).
5. Videz / reconstruisez le cache.
6. Maintenant, simulons une modification de la configuration. Sur le site de développement, allez dans les Paramètres principaux du site - admin/config/system/site-information et modifiez le nom du site.
7. Exporte la configuration complète du site de développement à admin/config/development/configuration/full/export. Cela créera un fichier compressé nommé config-site-domain-name-2017-01-10-15-38.tar.gz
8. Sur le site de production, allez à admin/config/development/configuration/full/import et téléversez le fichier compressé.
9. Après le transfert du fichier, vous serez redirigé vers l’onglet « Synchronisation ». Ici, vous pouvez voir la liste des fichiers YAML qui seront modifiés, ajoutés ou supprimés. En cliquant sur « Voir les différences », une vue détaillée des différences entre les données « Actuelles » (configuration courante) et « Ciblées » (pour l’import) s’affichera.
10. Cliquez sur Importer tout pour importer les modifications de configuration. Vous devriez voir un message indiquant que la configuration a été importée avec succès, et un message apparaîtra dans le tableau : "Aucun changement de configuration à importer".
Le nom de votre site a maintenant également changé en production. Bien que théoriquement vous deviez effectuer toutes les modifications en développement et les déployer en production, il arrive parfois que des modifications soient nécessaires directement en production ou, en général, par vos utilisateurs (en plus des rôles et permissions des utilisateurs, vous pouvez empêcher toute modification de la configuration par n’importe quel utilisateur avec le module « Lecture seule »).
Si vous allez à /admin/config/development/configuration, Drupal vous avertira des modifications apportées avec ce message :
Les éléments suivants dans votre configuration active ont été modifiés depuis le dernier import et pourraient être perdus lors du prochain import.
Pour exporter ces modifications de la production vers le développement :
- Exportez la configuration complète du site de production à l’adresse admin/config/development/configuration/full/export. Cela créera un autre fichier tar.gz.
- Sur le site de développement, allez à admin/config/development/configuration/full/import et téléversez le fichier que vous venez de télécharger. Examinez les modifications et cliquez sur « Importer tout ».
Vous pouvez continuer à effectuer des modifications dans le développement et les exporter en production quand vous en êtes satisfait.
Si vous avez un site interactif complexe avec un trafic acceptable, envisagez d’activer le mode maintenance en production lors de l’importation d’un ensemble complet de fichiers de configuration, afin d’éviter des conflits de configuration avec les actions des utilisateurs en cours. Cela vous permet également de vous connecter en tant qu’administrateur et de vérifier deux fois que le site mis à jour fonctionne correctement avant de le remettre en ligne.