Drush dans Drupal : guide détaillé pour maîtriser la ligne de commande

By Nacho Morato, 4 July, 2025

Si vous administrez, développez ou gérez un site web sous Drupal, vous avez sans doute entendu parler de Drush. Ce puissant outil en ligne de commande a transformé la façon dont les professionnels interagissent avec leurs projets Drupal et les gèrent, en leur faisant gagner du temps et en supprimant des dizaines d’étapes répétitives au quotidien.

Dans cet article, vous allez découvrir ce qu’est Drush, à quoi il sert dans Drupal et comment profiter de tous ses avantages. Nous passerons en revue son installation, ses commandes fondamentales, des cas d’usage avancés et des solutions aux problèmes courants, afin que vous puissiez en tirer le meilleur parti et optimiser vos tâches, des plus routinières aux plus complexes. Si vous souhaitez devenir un pro dans la gestion de votre site Drupal, lisez la suite : nous vous expliquons tout, clairement et sans détour.

Qu’est-ce que Drush et pourquoi est-il si important pour Drupal ?

Drush (pour Drupal Shell) est un utilitaire en ligne de commande écrit en PHP, conçu exclusivement pour faciliter l’administration et le développement de sites web construits avec Drupal. Il sert à la fois d’interface directe pour réaliser des tâches quotidiennes — qui demanderaient habituellement de nombreux clics dans l’interface graphique — et d’outil essentiel pour l’automatisation, l’intégration dans des scripts ou les workflows de déploiement.

Le principal avantage de Drush est l’agilité et l’efficacité qu’il apporte aussi bien aux administrateurs système, aux développeurs qu’aux utilisateurs avancés. Il permet par exemple d’activer ou de désactiver des modules, de vider le cache, de mettre à jour la base de données, d’exporter ou d’importer des configurations, et bien plus encore, le tout en une simple commande dans le terminal.

Son utilisation est devenue la norme au sein de la communauté Drupal grâce à sa capacité à faire gagner du temps et à réduire les erreurs manuelles. Drush s’intègre en outre sans difficulté dans les pipelines CI/CD, les opérations courantes et les tâches de maintenance ; c’est une pièce maîtresse pour toute personne souhaitant professionnaliser la gestion de projets Drupal.

Pour qui Drush est-il destiné ?

  • Développeurs : si la programmation fait partie de votre quotidien et que vous personnalisez des modules, générez du code, gérez des déploiements ou devez automatiser des processus, Drush sera votre meilleur allié.
  • Administrateurs système : si vous vous chargez de la maintenance, des sauvegardes, de l’optimisation des bases de données ou des déploiements, Drush vous permet d’effectuer ces opérations beaucoup plus rapidement et en toute sécurité.
  • Utilisateurs avancés : ceux qui, sans être forcément développeurs, sont à l’aise avec le terminal et veulent gagner du temps et du contrôle dans la gestion de Drupal.

Avantages clés de l’utilisation de Drush dans Drupal

  • Agilité et efficacité dans l’administration : oubliez les innombrables menus et onglets. Avec Drush, des tâches comme vider le cache, gérer les utilisateurs ou vérifier l’état du système se font en quelques secondes, de manière centralisée.
  • Automatisation des tâches répétitives : grâce aux scripts et aux commandes personnalisables, vous pouvez automatiser des mises à jour, des sauvegardes, etc., réduisant les risques et améliorant la fiabilité des processus.
  • Gestion avancée de la configuration : exporter, importer et synchroniser les configurations entre développement, test et production devient plus simple et plus sûr.
  • Mises à jour rapides et sécurisées : mettre à jour des modules, des thèmes ou le core de Drupal peut être casse-tête; avec Drush, ces processus sont systématisés et le traitement de plusieurs mises à jour simultanées est possible.
  • Gestion efficace de la base de données : effectuer et restaurer des sauvegardes, optimiser ou importer/exporter une base de données se fait en une commande — essentiel pour les environnements de test, de récupération ou de migration.
  • Interaction distante avec les serveurs : administrez des installations Drupal sur des serveurs distants via SSH et gérez plusieurs sites de façon centralisée.

Compatibilité de Drush : versions de Drupal et de PHP

Avant d’installer Drush, il est crucial de vérifier la compatibilité entre la version de Drush, celle de Drupal et celle de PHP. Voici un aide-mémoire rapide :

Version de DrushPHP minimumVersions de Drupal prises en charge
Drush 138.3 +Drupal 10.2 +
Drush 128.1 +Drupal 10 / 9
Drush 117.4 +Drupal 10 / 9
Drush 85.4.5 +Drupal 7

Conseil : pour installer la dernière version de Drush, assurez-vous de disposer de PHP 8.2 ou supérieur et d’utiliser au moins Drupal 9.5.

Installation pas à pas de Drush

La méthode recommandée et la plus sûre pour installer Drush consiste à utiliser Composer. Voici le processus standard :

  1. Accédez au terminal de votre serveur : connectez-vous en SSH. Si vous utilisez cPanel, ouvrez l’option Terminal.
  2. Placez-vous à la racine de votre projet Drupal : cd /chemin/vers/votre/site.
  3. Installez Drush : composer require drush/drush.
  4. Vérifiez l’installation : ./vendor/bin/drush --version.
  5. Ajoutez Drush au PATH : incluez ./vendor/bin dans votre variable d’environnement PATH afin de pouvoir exécuter simplement drush.

Nota : pour installer une version précise, indiquez-la, p. ex. : composer require drush/drush:^12

Exécution des commandes Drush

Une fois Drush installé, placez-vous à la racine du projet et tapez drush. Si votre PATH est configuré, utilisez simplement les commandes. Exemples :

  • drush en nom_du_module – active un module
  • drush pmu nom_du_module – désactive un module
  • drush cr – vide toutes les caches
  • drush sql-dump --result-file=/chemin/backup.sql – sauvegarde la base
  • drush sql-cli < /chemin/backup.sql – restaure la base
  • drush core:status – affiche l’état du site
  • drush config:import / drush config:export – import/export de config
  • drush updatedb – applique les mises à jour en base
  • drush cron – exécute les tâches cron

Astuce : drush ou drush list affiche tous les commandes. Pour l’aide : drush help nom_commande.

Commandes de base et avancées indispensables

  • Créer et gérer du contenu : de la création d’utilisateurs à la gestion des rôles et permissions, tout se fait depuis la console.
  • Gestion des modules et thèmes : installez, activez, désactivez et mettez à jour ; p. ex. : composer require drupal/nom_module puis drush en nom_module.
  • Gestion de la base de données : sauvegarde, restauration, optimisation.
  • Déploiements automatiques : drush deploy réunit updatedb, import config, cache-rebuild, etc.
  • Générateurs de code : Drush génère modules, plugins, entités, réduisant les erreurs.
  • Interaction distante : gérez des sites distants via SSH, idéal pour architectures multisite.

Générer un module personnalisé avec Drush

Créer un module personnalisé est bien plus rapide grâce aux générateurs de Drush.

  1. Structure du module : drush generate module et suivez l’assistant.
  2. Définissez les routes dans .routing.yml.
  3. Ajoutez la logique dans .module, contrôleurs, services, etc.
  4. Activez et testez : drush en nom_module.

Problèmes courants et solutions

  • « PHP version not supported » : mettez PHP à la bonne version.
  • « Drupal site not found » : vérifiez que vous êtes à la racine du projet.
  • « Database connection failed » : contrôlez les identifiants dans settings.php.
  • « Drush requires the ‘drupal/core’ package » : composer require drupal/core.

Pourquoi Drush est-il si populaire ?

Drush est devenu indispensable pour toute équipe professionnelle travaillant avec Drupal. Il s’intègre aux workflows quotidiens, permet la création de commandes personnalisées, bénéficie d’une communauté active et d’un support constant pour les nouvelles versions.

De plus, de nombreux modules tiers exposent des commandes Drush supplémentaires, par exemple pour reconstruire les index de recherche, purger des caches avancées ou importer des données externes, le tout sans quitter le terminal.

Mise en pratique : workflow typique avec Drush

  1. Dump base : drush sql-dump --result-file=/chemin/backup.sql
  2. Mise à jour du code via composer
  3. updatedb : drush updatedb
  4. Import config : drush config:import
  5. Cache rebuild : drush cr
  6. Status : drush core:status

Conseils avancés et astuces

  • Verbosity : -v, -vv, -vvv pour un log détaillé.
  • Confirmer automatiquement : -y pour automatiser les scripts.
  • Commandes personnalisées : l’API Drush permet vos propres commandes.
  • Utilisez les générateurs : drush generate crée entités, modules, etc.

Drush s’est imposé comme le couteau suisse indispensable pour tout gestionnaire de site Drupal. Facile à utiliser, compatible avec les environnements modernes et soutenu par une vaste communauté, il est le choix naturel pour professionnaliser, automatiser et simplifier votre travail sur Drupal. Si vous ne l’utilisez pas encore, c’est le moment idéal pour commencer et tirer parti de tout son potentiel.

Etiquetas

Comentarios