Composer est maintenant largement utilisé pour gérer les dépendances dans les projets PHP. Plusieurs projets obligent même l'utilisation. Ici on verra comment utiliser composer pour télécharger Drupal, ces dépendances et cibler la version de PHP pour une plateforme spécifique.
Dans cette example on utilisera Drupal 8 mais ce processus peut être modifier pour marcher avec d'autres systèmes de gestion de contenu (CMS). On incluera également des commandes git, mais vous pouvez les ignorer si vous ne l'utilise pas. Ces instructions sont adaptés à la ligne de commande dans une environnement linux donc ça se peut que vous devez les adapter à votre situation. On présume également que vous avez déjà installé PHP et composer.
Prérequis:
- php5.6 or php7.0
- composer
Création d'un nouveau projet
La première étape et de créer un nouveau dossier et d'initializer un projet composer. On utilise l'outil hussainweb/drupal-composer-init ici, mais il y existe d'autres moyens de débuter des projets Drupal avec composer.
composer global require hussainweb/drupal-composer-init mkdir mysite && cd mysite composer drupal-initadmin # Répondre aux questions dans une manière intéractive: # Package name: koumbit/monsite # Author: Nom <courriel> # Minimum stability: dev # License: GPLv2.0+ # Public web directory: web # Drupal core or distribution: drupal/core # Version for drupal/core: ^8.4 # Define dependencies: no # Define dev dependencies: no # Confirm generation: yes git init . && echo 'vendor/' >> .gitignore && git add . && git commit -m "Initial commit" # Seulement si vous utilisez git.
Modifier composer.json pour cibler la plateforme HAG
Les nodes web de HAG roule présentement PHP 5.6. On veut specifier ce détail dans le fichier composer.json pour que l'application puisse bien résoudre tout les dépendences et ne choisisse pas des libraries qui pourraient planter. On travail présentement sur l'implementation des nodes web en PHP 7.0 - on vous donnera des nouvelles dès qu'ils sont disponible.
Pour entrer l'information de la version PHP, on le mets dans la section config['platform']
de composer.json. Il va avoir l'air un peu comme la suite:
"config": { "platform": { "php": "5.6" } }
Une fois que cette changement est faite, on veut assurer que les dependences sont re-installer.
composer update --with-dependencies git add . ; git commit -m "Changed PHP requirement to match HAG environment" # Encore, seulement si vous utlisez git
Autres changements & téléversement
On peut utiliser composer pour télécharger les modules Drupal - eg. composer require drupal/search_api
pour télécharger le module search_api. Avec le template du projet qu'on a utilisé ici les modules sont placés dans web/modules/contrib
. Vous pouvez placer vos modules custm dans web/modules/custom
ou dans le dossier des modules pour un site spécifique si vous utilisez la fonctionallité multi-site.
Du au fait que les fichiers peut être téléverser seulement par FTP ou à partir de votre navigateur vers l'Hébergement Auto-Géré, on crée un fichier comprimé pour éviter de télécharger les ~20,000 fichiers (~200Mo) que Drupal 8 pèse.
tar czf site.tar.gz web/ vendor/
Note: Il est important d'utiliser .tar.gz
au lieu de .tgz
pour que la routine dans l'interface web d'AlternC peut bien le décomprimé.
Télécharger site.tar.gz vers le dossier de votre site et le décomprimer dans l'interface web à https://bureau.koumbit.net
À propos de Koumbit
Koumbit est une organisation à but non-lucratif auto-géré dans une manière horizontale qui offre des serivces d'hébergement auto-géré, l'hébergement Drupal mutualisé avec des mises à jours de sécurité automatiques, des services de consultation web et plus. Si vous avez des questions ou commentaires, hésitez pas à nous contacter.
Si vous êtes membre d'une organisation qui promouves la justice social et vous avez besoin d'éspace web, on a une programme d'hébergement solidaire à travers laquelle vous pourriez avoir accès à certaines de nos services sans frais.