Composer est un outil de gestion de dépendances pour PHP. Cela vous permet de déclarer les librairies dont votre projet a besoin, et cela les installera dans votre projet pour vous.
Mais comment à partir d’une librairie la transformer pour Composer ?
Dans cet article, le but sera de transformer la classe YATSPHP pour l’intégrer dans Packagist.
Installation de Composer
On commence par télécharger l’installeur :
|
|
On le déplace pour un accès global :
|
|
Description d’un package
Le nom d’un package est composé de cette facon : « vendor/packagename ». Ainsi, pour notre exemple, le « vendor » sera « Progi1984 », et le « packagename » sera « YATSPHP ».
La structure du dossier doit être facile à comprendre et permettre la maintenance facile du projet.
Donc à la racine, il y a un dossier « src » qui contient un dossier du « vendor » qui contient le fichier de classe « packagename ».php.
|
|
Initialisation de votre package
Il faut d’abord vous placer dans le dossier racine du projet (celui qui contient le dossier src) et lancer un composer init.
|
|
On ajoute dans le composer.json deux clés :
- require : On définit PHP 5.3 comme pré-requis.
|
|
- autoload : On dit à Composer d’autoload tous les fichiers avec le namespace « Progi1984 » dans le dossier « src ».
|
|
Envoyer votre package à Packagist
Après avoir commité le composer.json, ajouté après l’init, il faut aller se connecter sur packagist.org.
- On va sur la page pour soumettre un nouveau package : https://packagist.org/packages/submit
- Pour l’URL demandé, on prend l’URL Git du Repository : git@github.com:Progi1984/YATSPHP.git
- On soumet le formulaire et votre paquet est sur Packagist
A chaque nouveau commit, vous devrez forcer la mise à jour sur packagist à moins d’automatiser la mise à jour :
- Aller sur votre repository
- Aller sur la page « Settings »
- Aller sur l’onglet « Services Hooks »
- Choisir Packagist
- Remplir les informations :
- User : votre login de Packagist
- Token : vous pouvez le récupérer sur votre page de préférences sur Packagist.org
- Domain : packagist.org
- Valider
Et voilà, vous avez créer votre premier package avec Composer et vous l’avez proposé au téléchargement sur Packagist.