Drupal en ligne de commande : Drush installation
Drush 3.1 est sorti il y a quelques jours. Qu’est ce que Drush ?
C’est DRUpal SHell, càd Drupal en ligne de commande.
Drupal is a registered trademark of Dries Buytaert
A part pour les fanas de la ligne de commande, quels avantages offrent Drush ?
Certaines tâches peuvent devenir rébarbatives en Drupal, car peu intéressantes, routinières et consommatrices de temps !
Les mises à jour en particulier, peuvent devenir pénibles si vous utilisez beaucoup de modules et si vous devez gérer de nombreux sites. Passer 10 à 30 minutes pour mettre à jour un site, si vous devez refaire cela plusieurs fois par mois, pour 10 ou 20 sites… Pénible, et quelle perte de temps !
Drush est là pour ce genre d’opération !
Drush vous fera gagner beaucoup de temps.
Vous aurez rapidement regagné les quelques heures passées à comprendre Drush et à automatiser vos scripts. ![]()
- Drush n’est pas un module Drupal. Il ne s’installe pas dans votre site Drupal mais sur votre serveur Linux.
- Drush c’est un script en ligne de commande, càd que vous pouvez utiliser dans un terminal ou une session SSH (et pas depuis votre navigateur).
- Il vous permet de passer des commandes simplement, un peu le style de « apt-get » en Debian

- Les commandes sont variées :
- download de modules, de thèmes, et même de Drupal lui-même
- mettre le site en « Hors ligne » ou le remettre « en ligne »
- mise à jour de Drupal, modules, etc
- activation ou désactivation de modules, etc
- faire tourner la tâche « cron »
- comme tous les scripts, il est facile d’automatiser certaines opérations, soit pour les faire régulièrement, soit pour traiter un grand nombre de sites… et c’est là que vous allez gagner beaucoup de temps !
Je suppose que vous avez déjà un site Drupal vous permettant quelques tests. Le classique serveur LAMP (Linux Apache MySQL et PHP).
Linux n’est pas obligatoire. Drush doit être utilisable dans pratiquement tous les Unix, BSD ou Mac OS X, en fait sur tout OS où Drupal est installable.
Installons et essayons Drush :
Allez en ligne de commande sur votre serveur, soit dans un terminal si vous avez accès localement à votre serveur.
Pour que Drush puisse passer des commandes à votre site, la librairie PHP « php5-cli » doit être installée.
Si ce n’est pas encore fait, la commande d’installation est :
sudo aptitude install php5-cliSi votre distribution Linux n’utilise pas « sudo », passez d’abord en « root » avec « su - » ![]()
Drupal est assez gourmand en mémoire. L’allocation de base pour « php5-cli » n’est pas suffisante.
Editer le fichier « /etc/php5/cli/php.ini » avec VI ou votre éditeur habituel.
sudo vi /etc/php5/cli/php.iniCherchez la ligne avec l’allocation mémoire : faites une recherche en tapant « /memory_limit »
;;;;;;;;;;;;;;;;;;;
; Resource Limits ;
;;;;;;;;;;;;;;;;;;;
max_execution_time = 30 ; Maximum execution time of each script, in seconds
max_input_time = 60 ; Maximum amount of time each script may spend parsing request data
;max_input_nesting_level = 64 ; Maximum input variable nesting level
memory_limit = 32M ; Maximum amount of memory a script may consume (32MB)Augmentez cette limite à 128 MB minimum, ou même 256 MB si vous avez des sites utilisant beaucoup de modules.
Télécharger « drush » :
Je copie l’adresse de la dernière version de Drush depuis la page du projet Drush. Prenez la version stable, pas celle en développement.
$ cd /home/didier/download/drupal/ :/home/didier/download/drupal$ wget http://ftp.drupal.org/files/projects/drush-6.x-3.1.tar.gz --2010-06-27 18:15:29-- http://ftp.drupal.org/files/projects/drush-6.x-3.1.tar.gz Resolving ftp.drupal.org... 64.50.236.52, 64.50.233.100 Connecting to ftp.drupal.org|64.50.236.52|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 174203 (170K) [application/x-gzip] Saving to: `drush-6.x-3.1.tar.gz' 100%[=======================================================================================================>] 174,203 288K/s in 0.6s 2010-06-27 18:15:29 (288 KB/s) - `drush-6.x-3.1.tar.gz' saved [174203/174203]
Vous pouvez le mettre dans n’importe quel dossier. Je choisi de le mettre dans /opt.
$ cd /opt :/opt$ sudo tar xvfz /home/didier/download/drupal/drush-6.x-3.1.tar.gz drush/ drush/commands/ drush/commands/core/ drush/commands/core/drupal/ drush/commands/core/drupal/batch_6.inc .. drush/commands/core/drupal/update_6.inc drush/commands/core/drupal/update_7.inc drush/commands/core/clear.cache.inc ...
Le script « drush » doit être exécutable :
sudo chmod a+x /opt/drush/drushPour ne pas devoir à chaque fois préciser le chemin (path) vers le script Drush, vous pouvez soit créer un alias, soit un lien symbolique.
Je choisi de mettre un lien symbolique dans /usr/bin :
sudo ln -s /opt/drush/drush /usr/bin/drushDrush est prêt à être utilisé ![]()
Essayons quelques commandes :
$ drush Execute a drush command. Run `drush help [command]` to view command-specific help. Examples: drush dl cck zen Download CCK module and Zen theme. drush --uri=http://example.com status Show status command for the example.com multi-site. drush help --pipe A space delimited list of commands Options: -r <path>, --root=<path> Drupal root directory to use (default: current directory) -l <uri>, --uri=http://example.com URI of the drupal site to use (only needed in multisite environments) -v, --verbose Display extra information about the command. -d, --debug Display even more information, including internal messages. -q, --quiet Hide all output ...
Le dossier utilisé par Drush, est par défaut le dossier actuel.
Vous pouvez spécifier un dossier différent avec un paramètre (utile pour automatiser), mais pour un simple test, placer vous simplement dans le dossier « racine » de votre site Drupal.
J’ai un site de test, installé dans /home/didier/www/test6 :
$ cd /home/didier/www/test6/ :/home/didier/www/test6$ drush status Drupal version : 6.14 Default theme : garland Administration theme : garland PHP configuration : /etc/php5/cli/php.ini Drush version : 3.1 Drush configuration : Drupal root : /home/didier/www/test6
Sources :
- module Drush (Drupal.org)
- Installer Drush pour administrer Drupal en ligne de commande (Drupalfr.org)
- Installer Drush pour administrer Drupal en ligne de commande par Julien Dubreuil
- Drush – Drupal Shell utility : liste des commandes disponibles
Cet article a été publié par Didier Misson le 27 juin 2010 à 18 h 57 min et placé dans Actu, Applications Web (CMS). Tout point de vue mérite d'être connu et discuté. Je vous invite donc à laisser un commentaire ou un trackback exposant votre point de vue. De plus cela nous fait très plaisir d'échanger avec vous! Je vous rappelle que vous pouvez nous suivre via Flux RSS, Twitter ou encore Facebook. Bonne journée! |
Aucun commentaire pour l'instant
Drupal en ligne de commande : Drush installation http://bit.ly/bnTqRp #WebActus
This comment was originally posted on Twitter
RT @WebActus Drupal en ligne de commande : Drush installation http://goo.gl/fb/kIujQ
This comment was originally posted on Twitter
RT @WebActus: Drupal en ligne de commande : Drush installation http://bit.ly/bnTqRp #WebActus
This comment was originally posted on Twitter
RT @WebActus: Drupal en ligne de commande : Drush installation http://bit.ly/bnTqRp #WebActus
This comment was originally posted on Twitter















