Installer drush sous linux via composer

Drush est un outil indispensable pour développer sous drupal, il permet de contrôler son instance de site via le terminal pour les taches quotidiennes sur un site : téléchargement, activation de modules, vidage de cache, mise à jours de modules ou du core... Une fois que l'on y a goûté, on ne peut plus s'en passer.

Il existe un tas de méthode pour installer drush et il est parfois difficile de s'y retrouver : via les dépôts, PEAR, installation manuelle... Mais maintenant le moyen de plus simple est d'utiliser composer.

Si vous n'avez pas composer d'installé :

curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer

Ensuite on peut installer Drush :

Pour la version stable courante (actuellement la 8):

composer global require drush/drush

Pour la version non stable (actuellement la 9) :

composer global require drush/drush:dev-master

Vous pouvez maintenant lancer la commande

drush init

Qui créera un dossier .drush dans votre dossier "home" qui contiendra plus tard vos alias et fonctions personnalisées.

Si jamais vous obtenez l'erreur "command not found : drush" c'est que le dossier qui contient l'executable drush n'est pas dans la variable d'environement PATH.

Pour l'ajouter sous linux, modifier votre fichier .bashrc (ou .zshrc si vous utilisez zsh) et ajoutez à la fin :

PATH="$PATH:~/.config/composer/vendor/bin"

À noter, composer était avant dans le dossier ~/.composer, si c'est le cas pour vous alors la ligne à ajouter doit être :

PATH="$PATH:~/.composer/vendor/bin"

 

Commentaires

Néophyte, Je viens d'installer un serveur lamp debian 9, j'ai installé drupal via composer et impossible de faire tourner drush ! init = command not found ( je n'ai pas de répertoire .drush dans home/user/... je vois un dossier .composer. La suffisance la doc drush "After this step, you may call Drush via vendor/bin/drush." concrètement, no comprendo.

Ajouter un commentaire

Ne sera pas publié
CAPTCHA
Désolé, pour ça, mais c'est le seul moyen pour éviter le spam...