Il y a 389 articles et 19 utilisateurs inscrits (ce bandeau est défini dans MediaWiki:Sitenotice)

« Installer Drush avec Composer » : différence entre les versions

De AJLSM
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
 
(20 versions intermédiaires par 2 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
[[category:Drupal]][[category:Composer]]
[[category:Drupal]][[category:Composer]][[category:Drush]]
Voir la documentation : https://www.vincentliefooghe.net/content/installer-drush-avec-composer
Voir la documentation : https://www.vincentliefooghe.net/content/installer-drush-avec-composer
{{important|Modifier utilisateur:groupe de .composer si root:root vers ajlsm:ajlsm }}
{{important|Quelques remarques}}
Commades importantes :
* Élément de la liste à puces
<syntaxhighlight lang="bash">drush cache-rebuild</syntaxhighlight>
Modifier utilisateur:groupe de .composer si root:root vers ajlsm:ajlsm  
* Ajouter le PATH dans {{path|/home/ajlsm/.baschrc}}
<syntaxhighlight lang="bash"># drush
drush=/home/ajlsm/.composer/vendor/bin
PATH=$drush:$PATH
export PATH
</syntaxhighlight>
* Lancer la commande {{path|source .bashrc}}
'''Commandes importantes :'''
<syntaxhighlight lang="bash">drush cache:rebuild</syntaxhighlight>
Vider entièrement le cache de Drupal
Vider entièrement le cache de Drupal
<syntaxhighlight lang="bash">drush cc</syntaxhighlight>
<syntaxhighlight lang="bash">drush cc</syntaxhighlight>
Ligne 11 : Ligne 20 :


L'installation peut se faire via git ou via Composer. C'est cette méthode qui est nécessaire pour l'installation avec Drupal 8.
L'installation peut se faire via git ou via Composer. C'est cette méthode qui est nécessaire pour l'installation avec Drupal 8.
Installation des pré-requis sur la machine
=== Installation des pré-requis sur la machine ===


Ces paquets sont utilisés pour récupérer les données via http et git. unzip est utilisé avec drush make pour dézipper certains fichiers.
Ces paquets sont utilisés pour récupérer les données via http et git. unzip est utilisé avec drush make pour dézipper certains fichiers.
Ligne 17 : Ligne 26 :
<syntaxhighlight lang="bash">apt-get install curl git unzip</syntaxhighlight>
<syntaxhighlight lang="bash">apt-get install curl git unzip</syntaxhighlight>


Installation de Composer
=== Installation de Composer ===


L'installation de Composer est faite en global (pour tous les utilisateurs).
L'installation de Composer est faite en global (pour tous les utilisateurs).
Ligne 33 : Ligne 42 :


<syntaxhighlight lang="bash">export PATH=$HOME/.composer/vendor/bin:$PATH</syntaxhighlight>
<syntaxhighlight lang="bash">export PATH=$HOME/.composer/vendor/bin:$PATH</syntaxhighlight>
 
=== Installer Drush pour tous les utilisateurs ===
Installer Drush pour tous les utilisateurs


Si plusieurs utilisateurs ont accès à la machine, il est préférable d'avoir une installation globale :
Si plusieurs utilisateurs ont accès à la machine, il est préférable d'avoir une installation globale :
Ligne 45 : Ligne 53 :
drush --version
drush --version
which drush</syntaxhighlight>
which drush</syntaxhighlight>
=== Installer drush pour ce projet seulement  ===
Il peut être bon de livrer le projet avec son propre drush
<syntaxhighlight lang="bash">
composer require drush/drush
</syntaxhighlight>
Vous pourrez ensuite utilisez drush avec
<syntaxhighlight lang="bash">
./vendor/drush
</syntaxhighlight>
== Lancer Drush lorsqu'il y a plusieurs sites ==
Quand un projet Drupal comporte plusieurs sites, la commande :
<syntaxhighlight lang="bash">$ drush ws</syntaxhighlight>
Renvoie l'erreur suivante :
<syntaxhighlight lang="bash">Command ws was not found. Drush was unable to query the database. As a result, many commands are unavailable. Re-run your command with --debug to see relevant log messages</syntaxhighlight>
'''Solutions :'''
#Utiliser des alias pour les sites. Voir ici : https://www.drush.org/11.5.1/site-aliases/
#Renseignez l'URI du site pour que Drush se connecte à la base de données.
=== Renseigner l'URI ===
(https://www.drush.org/11.5.1/usage/#using-the-uri-option-and-root-options)
Par exemple, le Drupal ad53 fait fonctionner plusieurs sites :
*{{path|Drupal/web/sites/archives.lamayenne.fr}}
*{{path|Drupal/web/sites/salle-de-lecture-archives.lamayenne.fr}}
*...
Pour travailler avec la base de données du site : {{path|archives.lamayenne.fr}}, renseignez l'URI avec le paramètre '''--uri=''' du site concerné + la commande que vous souhaitez envoyer.
Par exemple, pour reconstruire les caches :
<syntaxhighlight lang="bash">$ drush --uri=https://archives.lamayenne.fr cr</syntaxhighlight>

Dernière version du 4 juillet 2024 à 10:26

Voir la documentation : https://www.vincentliefooghe.net/content/installer-drush-avec-composer

Important :
Quelques remarques.
  • Élément de la liste à puces

Modifier utilisateur:groupe de .composer si root:root vers ajlsm:ajlsm

  • Ajouter le PATH dans /home/ajlsm/.baschrc
# drush
drush=/home/ajlsm/.composer/vendor/bin
PATH=$drush:$PATH
export PATH
  • Lancer la commande source .bashrc

Commandes importantes :

drush cache:rebuild

Vider entièrement le cache de Drupal

drush cc

Sélectionner une partie de l'installation pour vider les caches.

Copie de la documentation de V. Liefooghe

[modifier | modifier le wikicode]

Depuis quelques temps déjà, Drush (DRUpal SHell) est disponible sur GitHub, et non plus sur http://drupal.org.

L'installation peut se faire via git ou via Composer. C'est cette méthode qui est nécessaire pour l'installation avec Drupal 8.

Installation des pré-requis sur la machine

[modifier | modifier le wikicode]

Ces paquets sont utilisés pour récupérer les données via http et git. unzip est utilisé avec drush make pour dézipper certains fichiers.

apt-get install curl git unzip

Installation de Composer

[modifier | modifier le wikicode]

L'installation de Composer est faite en global (pour tous les utilisateurs).

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

Installer Drush pour l'utilisateur courant

composer global require drush/drush:dev-master
ls -a .composer/vendor/bin
.  ..  boris  drush  drush.bat	drush.complete.sh  drush.php

Drush est installé dans le répertoire .composer/vendor/bin de l'utilisateur. Il faut ensuite ajouter ces lignes dans le .bashrc :

export PATH=$HOME/.composer/vendor/bin:$PATH

Installer Drush pour tous les utilisateurs

[modifier | modifier le wikicode]

Si plusieurs utilisateurs ont accès à la machine, il est préférable d'avoir une installation globale :

git clone https://github.com/drush-ops/drush.git /usr/local/src/drush
cd /usr/local/src/drush
git checkout 
ln -s /usr/local/src/drush/drush /usr/bin/drush
composer install
drush --version
which drush


Installer drush pour ce projet seulement

[modifier | modifier le wikicode]

Il peut être bon de livrer le projet avec son propre drush

composer require drush/drush

Vous pourrez ensuite utilisez drush avec

./vendor/drush

Lancer Drush lorsqu'il y a plusieurs sites

[modifier | modifier le wikicode]

Quand un projet Drupal comporte plusieurs sites, la commande :

$ drush ws

Renvoie l'erreur suivante :

Command ws was not found. Drush was unable to query the database. As a result, many commands are unavailable. Re-run your command with --debug to see relevant log messages

Solutions :

  1. Utiliser des alias pour les sites. Voir ici : https://www.drush.org/11.5.1/site-aliases/
  2. Renseignez l'URI du site pour que Drush se connecte à la base de données.

Renseigner l'URI

[modifier | modifier le wikicode]

(https://www.drush.org/11.5.1/usage/#using-the-uri-option-and-root-options)

Par exemple, le Drupal ad53 fait fonctionner plusieurs sites :

  • Drupal/web/sites/archives.lamayenne.fr
  • Drupal/web/sites/salle-de-lecture-archives.lamayenne.fr
  • ...

Pour travailler avec la base de données du site : archives.lamayenne.fr, renseignez l'URI avec le paramètre --uri= du site concerné + la commande que vous souhaitez envoyer.

Par exemple, pour reconstruire les caches :

$ drush --uri=https://archives.lamayenne.fr cr