PHP : Composer (sous OpenBSD)

Article publié, le
3 minute(s) de lecture

Cet article contient 473 mots.
Source brute de l'article : MD

Description

Je ne présenterais ni PHP, ni composer

Versions logicielles :

  • PHP :
    • 6.5 : 7.1.28, 7.2.17, 7.3.4
    • 6.4 : 7.0.32, 7.1.22, 7.2.10
  • Composer :
    • 6.5 : 1.8.3
    • 6.4 : 1.6.3

Installation

Les deux “outils” sont disponibles en tant que paquets, pour l’exemple :
pkg_add -v php-7.2 composer

Après l’installation de Composer, faites une mise à jour de lui-même :
composer self-update

Configuration

De même, je ne détaillerais pas la configuration ni de PHP, ni de Composer, d’autant que par défaut pour ce dernier, il n’y a rien à faire en soit - il est bien sûr possible de configurer certaines options…

Pour information, par défaut, Composer est configuré pour être exécuté avec php-7.0 sous la 6.4, et php-7.1 sous 6.5 - qu’il installe en dépendances (avec femail*)

Le problème qui se pose est que si vous utilisez php-7.2, voire php-7.3, Composer s’exécutera avec l’environnement PHP pour lequel il est paramétré par défaut - logique, vous me direz !

Alors, comment le contraindre ?

Très facilement :
# sed -i -e "s/php-7.x/php-7.y/" "$(which composer)"
où :

  • 7.x est votre installation PHP par défaut,
  • et 7.y la version de PHP que vous préférez utiliser, telle que 7.2, par exemple…

Pour finir, on exécute ensuite un petit diagnostic :

Code : shell

$ composer diagnose
Checking platform settings: OK
Checking git settings: OK
Checking http connectivity to packagist: OK
Checking https connectivity to packagist: OK
Checking github.com rate limit: OK
Checking disk free space: OK
Checking pubkeys:
Tags Public Key Fingerprint: 57815BA2 7E54DC31 7ECC7CC5 573090D0  87719BA6 8F3BB723 4E5D42D0 84A14642
Dev Public Key Fingerprint: 4AC45767 E5EC2265 2F0C1167 CBBB8A2B  0C708369 153E328C AD90147D AFE50952
OK
Checking composer version: OK
Composer version: 1.8.5
PHP version: 7.2.17
PHP binary path: /usr/local/bin/php-7.2

Tous les voyants sont OK, Composer a la dernière version en cours, et il s’exécute bien avec la version de PHP désirée - (ici, dans cet exemple, la 7.2 !)

Dépannage

Error: Do not run Composer as root/super user

Et, oui, il n’est pas recommandé d'exécuter Composer avec des droits d'administrateurs - alors ne le faites pas !

Plus d’informations, sur : https://getcomposer.org/root

Error: Missing pubkey for…

Il est possible que lors du diagnostique, vous vous retrouvez avec ce message d’erreur sur fond rouge :

Checking pubkeys: FAIL
Missing pubkey for tags verification
Missing pubkey for dev verification
Run composer self-update --update-keys to set them up

Il vous dit quoi faire !!!

Donc :

Code : shell

$ composer self-update --update-keys
Open https://composer.github.io/pubkeys.html to find the latest keys
Enter Dev / Snapshot Public Key (including lines with -----):

Là, le shell reste en attente jusqu’à ce que vous lui copiez la clé demandée, que vous trouverez sur https://composer.github.io/pubkeys.html, puisqu’il a même la gentillesse de vous le dire !

Si l’entrée saisie n’est pas correcte, vous aurez un message d’erreur : Invalid input, il vous sera redemandé de faire la saisie !