web-dev-qa-db-fra.com

Générer des modules installés dans un composer.json pour un site existant: je dois gérer via Composer, pas via UI

J'ai un site Drupal 8 opérationnel avec des modules qui ont été installés manuellement. Je veux générer un fichier composer.json approprié pour les gérer à l'aide de Composer.

Le plus proche que j'ai pu trouver pour y parvenir est un ancien Drupal 7, Composer Generate , mentionné dans comment installer le package via composer? mais cela ne fonctionne qu'avec Drupal 7 et il n'est plus développé.

Comment déplacer Composer dossier créé de drupal-8.xx d'un niveau vers html? suggère que les modules tiers peuvent/devraient être gérés avec Composer, mais je souhaite ne pas avoir à réécrire manuellement le fichier composer.json pour y parvenir.

Existe-t-il un moyen Drupal 8/Composer/Drush), ou la mise à jour manuelle de composer.json est-elle la seule option?

4
rwcorbett

Composer Generate est une extension Drush. Il peut être utilisé soit avec Drupal 7 ou Drupal 8. Étant donné que la dernière version disponible sur drupal.org est datée du 25 février 2016, il est probable qu'elle n'est pas compatible avec la version Drush que vous utiliseriez sur votre site.

La page de projet pour Composer Generate suggère d'utiliser le module Composerize , qui est disponible pour Drupal 8.

Ce module peut générer un composer.json à partir de votre base de code installée Drupal, qui peut être utilisée pour régénérer cette base de code en exécutant composer install.

Faites attention à l'avertissement signalé dans la page du projet.

Ce module est encore en développement. Il prend en charge les fonctionnalités de base Drupal 8 configurations, mais il manque de nombreuses fonctionnalités nécessaires (par exemple, la prise en charge des correctifs, des bibliothèques JavaScript, des distributions, etc.). Nous travaillons sur tout cela, mais ce module n'est certainement pas prêt pour les heures de grande écoute .

Le module est pris en charge par Acquia et la version de développement a été mise à jour le 20 mars 2018.

Alternativement, comme le suggère la page du projet, vous pouvez utiliser Composerize Drupal , un plugin Composer pour convertir un Drupal non géré par Composer) = site vers un site géré par Composer Drupal site.

3
kiamlaluno