Créer un site Drupal ca peut aller vite, mais à la longue c’est toujours la même chose. On se connecte sur Drupal.org pour télecharger les sources de Drupal et les modules un par un, ce qui prend un temps fou. On peut encore se créer une installation toute prête mais encore faut-il maintenir à jour les modules.

Il existe une autre solution, utiliser Drush. Ce n’est pas une révolution, car cela fait maintenant un petit moment déjà que Drush est disponible mais j’avoue n’avoir jamais eu le temps de m’y plonger.

Drush n’est pas un module pour Drupal, c’est un outil à installer sur votre serveur qui va vous permettre d’administrer vos sites en ligne de commandes. D’où son nom DRUpal SHell.

Parmi les possibilités qu’offre Drush vous allez pouvoir via une simple ligne de commande installer Drupal, activer ou désactiver des modules ou encore télécharger des thèmes.

Depuis quelques temps je l’utilise professionnellement chez mon client, et c’est vraiment un gain de temps. J’ai donc pris un peu de temps chez moi pour comprendre sont fonctionnement.

Drush Drupal

Pour la suite de la présentation de Drush je vous montrerai comment l’installer sous linux. Vous trouverez à la fin de cet article comment faire sous Windows ou Mac.


Pré-requis

Comme je viens de l’évoquer, être sous Linux avec apache2, php 5.2 d’installé.

Pour fonctionner Drush a besoin de la librairie CLI de php (CLI pour interface de ligne de commande en français).

Vous pouvez installer ce paquet via cette commande :

$ sudo apt-get install php5-cli

Drupal étant assez gourmand en mémoire il nous faut augmenter la valeur par défaut de php5-cli. Pour cela éditez le fichier

$ sudo vi /etc/php5/cli/php.ini

et augmentez la valeur memory_limit (par défaut à 32M) à 128M voir même 256M.


Installation

Télécharger Drush et dézipper le à l’endroit ou vous voulez. Moi j’ai choisi de le placer dans le répertoire /opt qui est utilisé pour les applications supplémentaires au système. Ainsi pour moi /path/to/drush/ équivaut à /opt

Placez vous dans le répertoire de votre choix

$ cd /path/to/drush/

Téléchargez Drush

$ sudo wget http://ftp.drupal.org/files/projects/drush-7.x-4.0.tar.gz

Décompressez l’archive

$ sudo tar -xzf drush-7.x-4.0.tar.gz

Rendons maintenant le répertoire exécutable

$ sudo chmod u+x /path/to/drush/drush

Maintenant nous allons créer un lien symbolique vers drush.

$ sudo ln -s /path/to/drush/drush /usr/bin/drush

Avant de s’en servir il reste une dernière chose à télécharger pour faire fonctionner Drush, en l’occurrence la librairie Pear Console Table. Nous allons nous placer dans le répertoire /includes de drush afin de télécharger et installer les fichiers nécessaires.

cd drush/includes
sudo wget http://download.pear.php.net/package/Console_Table-1.1.3.tgz

# On extrait les fichiers de l'archive
tar -xzf Console_Table*.tgz

# On déplace les fichiers dont on a besoin
sudo mv Console_Table-1.1.3/Table.php /opt/drush/includes/table.inc

# Puis on supprime les fichiers qui ne nous serviront plus
rm -r Console_Table-1.1.3
rm -f Console_Table*.tgz

Drush est maintenant installé et prêt à l’emploi. Pour l’essayer tapez simplement drush et vous devriez voir la liste des commandes drush disponibles.

$ drush


Utiliser Drush

Placez vous dans le répertoire où sont vos sites par exemple /var/www.

Nous allons maintenant installer Drupal avec la commande Drush download ou dl

$ sudo drush dl drupal

Drupal a été téléchargé et déployé à l’endroit ou vous êtes.

Placez vous dans votre installation de Drupal pour copier le fichier settings.php.

$ sudo cp sites/default/default.settings.php sites/default/settings.php
$ sudo chmod 666 settings.php

Il ne vous reste plus qu’à effectuer votre installation.

Une fois celle-ci terminée, rendez-vous dans le répertoire sites/all dans lequel nous allons déployer des modules et installer un nouveau thème. Pas besoin de créer les répertoires modules ou thèmes, drush va le faire pour vous.

$ sudo drush dl cck views devel

Nous venons de télécharger cck, views et le module devel. Pour vérifier vous pouvez aller sur l’administration de vos modules.

Cela marche aussi pour les thèmes

$ sudo drush dl basic

Par défaut un module téléchargé n’est pas activé alors voici comment faire

$ sudo drush enable views

Vous trouverez la liste complète des commandes de drush ici


Conclusion

Drush est un vrai gain de temps pour réaliser vos sites, plus de connexion sur drupal.org, plus de recherche dans la liste des modules. En contrepartie il vous faut connaître le nom des modules que vous voulez installer.
Je vous conseille vivement d’installer Drush et de jouer avec.

La liste des commandes disponible pour Drush est ici sur Drupal.org ou alors un aide mémoire en pdf.


Edit

Pour ceux qui aimeraient installer Drush sous Mac ou sous Windows voici comment faire

Edit : Cet article à été mis à jour le 10/01/10

11 Responses to Installer Drush pour administrer Drupal en ligne de commande

Avatar

jean-baptiste

décembre 22nd, 2009 at 13 h 29 min

Bravo pour cet article qui m’a permis de comprendre l’interet de Drush.

Je signale qu’il manque le lien vers l’ensemble des commandes Drush. Avant dernier paragraphe.

En tout cas c’est une bonne référence. On devrait trouver un moyen d’agréger les documentations et les mettre en valeur sur le planet. Ca te donnerai des lecteurs et cela enrichirait drupalfr

Qu’en penses-tu ?

Avatar

Julien

décembre 22nd, 2009 at 13 h 56 min

Merci Jean-Baptiste

Effectivement j’ai oublié de mettre une lien vers les commandes et vers l’aide mémoire que j’avais trouvé.

Guillaume à déja inclus mon flux sur planète, mais merci :)

Avatar

Utiliser drush avec un hébergement OVH mutualisé (php5) | 532Pixel – Le blog

mars 9th, 2010 at 10 h 49 min

[...] installer drush, je vous conseille des tuto bien faits comme celui-la : Installer drush pour administrer drupal, par Julien Dubreuil, ou meme le README.txt du [...]

Avatar

Drupal en ligne de commande : Drush installation « Un peu de tout

juin 27th, 2010 at 18 h 23 min

[...] Installer Drush pour administrer Drupal en ligne de commande par Julien Dubreuil [...]

Avatar

Drush : mettre à jour votre site Drupal « Un peu de tout

juillet 4th, 2010 at 22 h 19 min

[...] Installer Drush pour administrer Drupal en ligne de commande par Julien Dubreuil [...]

Avatar

Julien

septembre 17th, 2010 at 10 h 31 min

Merci Julien pour cet excellent tutoriel !
Pour une installation locale sur Mac et Mamp, je recommande : http://morten.dk/blog/got-crush-drush

Avatar

Julien

septembre 17th, 2010 at 10 h 34 min

Que de Julien dans cette communauté Française: )

Merci pour le lien, je vais d’ailleurs le placer plus haut, à la fin de mon post.

Avatar

Drush : Ma présentation au Drupal Meetup de Paris | Julien dubreuil

novembre 22nd, 2010 at 23 h 00 min

[...] n’est pas coutume, un post qui ne traite pas directement du Drupal, mais de la présentation de Drush que j’ai donné lors du Drupal Meetup mi [...]

Avatar

Karim

novembre 25th, 2010 at 3 h 18 min

Super article Julien !

Une petite question. Existe-t-il une commande Drush ou Drush Make pour installer un site directement en français?

Merci

Avatar

Julien

novembre 27th, 2010 at 22 h 06 min

Bonjour Karim

Après quelques recherches je n’ai malheureusement rien trouvé.

Avatar

assiya

septembre 10th, 2011 at 19 h 13 min

Bonjour,

excellent tuto , je l’ai bien apprecie apres son utilité , Merci Julien !

Comment Form



About me

about me

Bienvenue sur mon blog. Sur cet espace j’essaie de partager au mieux ma passion pour le web et actuellement mon engouement pour Drupal. Vous trouverez ici mes découvertes, mes problématiques et les solutions rencontrées.

I am going to DrupalCon London!

Commentaires

  • zanane: Merci Julien ! Bravo pour ton site et ton esprit de partage [...]
  • vikin: Bonjour Julien. Cela fait quelques temps que je souhaite créer un blog en utilisant Drupal. Cer [...]
  • Julien Desrosiers: Bonne idée! Ça me fait penser à The Daily WordPress Reference, qui est un peu comme ça mais q [...]
  • fofiedelly: merci pour les astuces!! en passant ton blog tombe à l'heure meme où je me met sous drupal et il e [...]
  • Julien: Bonjour Non il n'y aura pas de version Française de [...]