le 08/01/2021 - merci Christophe Espiau
Environnement : composer, php7.2, drush 10.3.6
Tuto vidéo : https://www.youtube.com/watch?v=qy_nq3_sbyM&t=1250s&ab_channel=KevinGautreau
Installation de config_split :
composer require drupal/config_split drush en config_split
Création d'un environnement de config "local"
Pour commencer, on va créer un nouvel environnement de configuration que l'on appellera "local" sur l'interface /admin/config/development/configuration/config-split
Dans l'interface, il faudra à minima :
- donner un label, par exemple "local"
- renseigner le champ "folder" (ou répertoire en français), par exemple : ../config/local
- décocher la cas "active" car se sera dans le fichier settings que l'on indiquera si cet environnement de config est actif
- dans la rubrique "complete split", choisir le module "devel", cela indique que ce module ne sera actif que dans cette config
- valider
Créer le répertoire local
mkdir config/local
Première installation sur le serveur de prod
- git pull
- composer install
- installer le site drupal classiquement via l'interface
- dans le fichier settings.php, ajouter :
$settings['config_sync_directory'] = '../config/sync'; // attention, cette ligne est peut-être déjà existante $config['config_split.config_split.local']['status'] = FALSE; $config['config_split.config_split.staging']['status'] = FALSE; $config['config_split.config_split.prod']['status'] = TRUE;
- faites un "dump" de votre base de donnée locale (drush sql-dump > votrebase.sql) puis importez la en prod : drush sql-cli < votrebase.sql sans oublier d'avoir préalablement supprimer les données de la base du serveur de prod (drush sql-drop)
- drush cr
- vérifier que la config en base de données n'est pas celle des fichiers avec drush cst
- drush cim
settings.php
Dans le fichier settings.php, ajouter :
$config['config_split.config_split.local']['status'] = TRUE; $config['config_split.config_split.staging']['status'] = FALSE; $config['config_split.config_split.prod']['status'] = FALSE;
Commandes drush
drush cex (pour config export) drush cim(pour config import) drush cst (pour config status)
Voir les différences entre configurations (bd vs code)
admin/config/development/configuration
- Log in to post comments