Mettre à jour le cœur de Drupal avec Composer
Cet article suppose que vous avez installé Drupal avec un projet composer comme drupal/core-recommended or drupal/dxpr-marketing-cms-project
Lister les mises à jour Drupal disponibles
composer outdated "drupal/*"Si aucune ligne ne commence par drupal/core, Composer ne connaît aucune mise à jour. S’il y a une mise à jour, continuez avec les commandes ci-dessous
Créer une sauvegarde de votre instance Drupal
Pour mettre à jour un site en production, créez toujours une sauvegarde avant la mise à jour, même si vous l’avez testée avec succès sur un environnement de développement ou de test. Utilisez les outils de votre hébergeur pour créer une sauvegarde ou un instantané de votre site Drupal.
Mettre à jour le code du cœur de Drupal
si vous utilisez drupal/core-recommended:
composer update "drupal/core-*" --with-all-dependenciesPour simuler la mise à jour et voir ce qui se passerait, sans rien changer, ajoutez --dry-run.
Mettre à jour vers le dernier patch du cœur
Pour mettre à jour votre site vers le dernier patch, mais pas vers la dernière version mineure, ajoutez --with= options pour chaque drupal/core-* dépendance listée dans composer.json.
Par exemple, si 10.2 est la version mineure actuelle et que vous voulez mettre à jour votre site vers le dernier patch de la 10.3 :
composer update "drupal/core-*" --with-all-dependencies --with=drupal/core-recommended:~10.3.0 --with=drupal/core-composer-scaffold:~10.3.0
Cet exemple suppose que drupal/core-recommended et drupal/core-composer-scaffold sont les seules dépendances du cœur de Drupal dans composer.json.
Mettre à jour vers une version précise du cœur
En général, mieux vaut ne pas préciser de version du cœur de Drupal lors d’une mise à jour, sauf si vous voulez épingler une version précise. Pour épingler votre site à une version précise, utilisez l’exemple suivant :
Pour épingler votre site à la version 10.3.6 et mettre à jour toutes les dépendances en conséquence :
composer require drupal/core-recommended:10.3.6 drupal/core-composer-scaffold:10.3.6 drupal/core-project-message:10.3.6 --update-with-all-dependenciesAvertissement : Si vous épinglez votre site à une version précise du cœur, cette version sera ajoutée au fichier de verrouillage, et les mises à jour futures ne la dépasseront pas. Réexécutez la commande require comme indiqué ci-dessous pour revenir à une version « non épinglée » du cœur.
Désépingler une version précise du cœur
Si votre site utilise une version épinglée du cœur de Drupal et que vous voulez passer à une autre version, vous avez deux choix.
- Vous pouvez exécuter la commande composer require ci-dessus pour préciser une nouvelle version épinglée du cœur.
- Vous pouvez désépingler votre version du cœur et mettre à jour vers la dernière version de Drupal.
Pour désépingler votre version de Drupal, exécutez cette commande :
composer require drupal/core-recommended drupal/core-composer-scaffold drupal/core-project-message --update-with-all-dependenciesExécuter les mises à jour de base de données
Pour plus de commodité, nous avons inclus les commandes Drush nécessaires pour terminer une mise à jour ; beaucoup trouvent Drush plus rapide et plus facile que la zone d’administration web.
Vous pouvez utiliser drush :
drush updatedb
drush cache:rebuildOu visitez [YOUR DOMAIN]/update.php dans un navigateur.