Il y a 389 articles et 19 utilisateurs inscrits (ce bandeau est défini dans MediaWiki:Sitenotice)
« Basculer un projet Drupal 8 existant sous Composer » : différence entre les versions
| Ligne 7 : | Ligne 7 : | ||
Il est possible de récupérer la liste des modules à installer avec la commande suivante : | Il est possible de récupérer la liste des modules à installer avec la commande suivante : | ||
<syntaxhighlight lang="bash">drush pml --no-core | grep "Enabled" | awk -F "(" '{print $2}' | awk -F ")" '{print $1}' | xargs -i echo composer require drupal/{}</syntaxhighlight> | <syntaxhighlight lang="bash">drush pml --no-core | grep "Enabled" | awk -F "(" '{print $2}' | awk -F ")" '{print $1}' | xargs -i echo composer require drupal/{}</syntaxhighlight> | ||
Il faut ensuite l'adapter. | La sortie dans le terminal ressemble à ceci : | ||
<syntaxhighlight lang="bash">composer require drupal/addtocalendar | |||
composer require drupal/back_to_top | |||
composer require drupal/backup_migrate | |||
composer require drupal/blazy</syntaxhighlight> | |||
Il faut ensuite l'adapter, si nécessaire, pour que la commande fonctionne. Par exemple : '''php composer.phar''' au lieu de '''composer'''. | |||
La commande "require" doit être lancée "relativement" à l'endroit où se trouve {{path|composer.phar}}. Par exemple : | La commande "require" doit être lancée "relativement" à l'endroit où se trouve {{path|composer.phar}}. Par exemple : | ||
| Ligne 15 : | Ligne 20 : | ||
Ensuite, il faut ajouter les librairies, le thème et les fichiers locaux. | Ensuite, il faut ajouter les librairies, le thème et les fichiers locaux. | ||
== Ajout des librairies == | == Ajout des librairies == | ||
Pour ajouter les libraries dans la gestion des dépendances, on peut choisir entre deux solutions : | Pour ajouter les libraries dans la gestion des dépendances, on peut choisir entre deux solutions : | ||
Version du 18 juin 2019 à 08:06
Voir la documentation : https://www.flocondetoile.fr/blog/basculer-un-projet-drupal-8-existant-sous-composer
Drush doit-être installé.
Ajout des modules
Il est possible de récupérer la liste des modules à installer avec la commande suivante :
drush pml --no-core | grep "Enabled" | awk -F "(" '{print $2}' | awk -F ")" '{print $1}' | xargs -i echo composer require drupal/{}
La sortie dans le terminal ressemble à ceci :
composer require drupal/addtocalendar
composer require drupal/back_to_top
composer require drupal/backup_migrate
composer require drupal/blazy
Il faut ensuite l'adapter, si nécessaire, pour que la commande fonctionne. Par exemple : php composer.phar au lieu de composer.
La commande "require" doit être lancée "relativement" à l'endroit où se trouve composer.phar. Par exemple :
php ../composer.phar require drupal/libraries
Ensuite, il faut ajouter les librairies, le thème et les fichiers locaux.
Ajout des librairies
Pour ajouter les libraries dans la gestion des dépendances, on peut choisir entre deux solutions :
Intégration dans composer.json
Pour chaque librairie, il faut ajouter les informations (illustrées dans l'exemple ci-dessous) dans le fichier composer.json, :
"repositories": [
{
"type": "package",
"package": {
"name": "usrz/bootstrap-languages",
"type": "drupal-library",
"version": "dev-master",
"dist": {
"url": "https://github.com/usrz/bootstrap-languages/archive/master.zip",
"type": "zip"
}
}
}
],
[...]
Ensuite, on lance la commande :
php composer.phar require usrz/bootstrap-languages
Ajout du plugin composer : Drupal Libraries Installer.
Cette méthode permet de travailler avec les dernières versions des librairies.
Voir la documentation ici : https://packagist.org/packages/balbuf/drupal-libraries-installer. Et https://github.com/composer/installers#custom-install-paths
Les principales commandes :
Ajout de l'installeur :
composer require balbuf/drupal-libraries-installer
Ajouts des librairies dans composer.json.
Par exemple:
"extra": {
"drupal-libraries": {
"flexslider": "https://github.com/woocommerce/FlexSlider/archive/2.6.4.zip",
"chosen": "https://github.com/harvesthq/chosen/releases/download/v1.8.2/chosen_v1.8.2.zip",
"blazy": "https://github.com/dinbror/blazy/archive/master.zip",
"jquery-hoverIntent": "https://github.com/briancherne/jquery-hoverIntent/archive/master.zip",
"cropper": "https://github.com/fengyuanchen/cropper/archive/master.zip",
"colorbox": "https://github.com/jackmoore/colorbox/archive/master.zip",
"jquery.cycle2": "https://github.com/malsup/cycle2/archive/master.zip",
"jquery.cycle": "https://github.com/malsup/cycle/archive/master.zip",
"json2": "https://github.com/douglascrockford/JSON-js/archive/master.zip",
"slick": "https://github.com/kenwheeler/slick/archive/master.zip"
},
"installer-paths": {
[...]
"web/libraries/{$name}": ["type:drupal-library"],
[...]
}
Il est aussi possible de renseigner une version spécifique de la librarie de la façon suivante, en précisant la relation avec l'installeur :
"repositories": [
{
"type": "package",
"package": {
"name": "dinbror/blazy",
"version": "1.8.2",
"type": "drupal-library",
"extra": {
"installer-name": "blazy"
},
"source": {
"type": "git",
"url": "https://github.com/dinbror/blazy",
"reference": "1.8.2"
}
}
}
],
[...]