Aller au contenu principal
MeteorGPLby WebbingApps

Intégration continue

Enregistrez un jeton comme secret, transmettez-le à Composer via COMPOSER_AUTH et, si vous le souhaitez, envoyez le fichier lock à votre tableau de bord des dépendances.

1. Un jeton pour la CI

Créez-le dans Paramètres → Jetons Composer (ou, pour une équipe, dans les jetons Composer de l’organisation : il continue de fonctionner lorsque des personnes partent). Limitez-le aux paquets utilisés par le projet et aux plages IP de vos runners, et donnez-lui une date d’expiration. Enregistrez-le comme secret nommé METEORGPL_TOKEN.

Le dépôt se déclare une seule fois dans le composer.json du projet :

composer config repositories.meteorgpl composer https://composer.meteorgpl.com

GitHub Actions

- name: Install PHP dependencies
  env:
    COMPOSER_AUTH: '{"http-basic":{"composer.meteorgpl.com":{"username":"token","password":"${{ secrets.METEORGPL_TOKEN }}"}}}'
  run: composer install --no-interaction --prefer-dist

- name: Report composer.lock to the dependency dashboard
  if: github.ref == 'refs/heads/main'
  run: curl -fsS -u "token:${{ secrets.METEORGPL_TOKEN }}" -F [email protected] https://meteorgpl.com/api/projects/<project-id>/lock

GitLab CI

install:
  image: composer:2
  variables:
    COMPOSER_AUTH: '{"http-basic":{"composer.meteorgpl.com":{"username":"token","password":"$METEORGPL_TOKEN"}}}'
  script:
    - composer install --no-interaction --prefer-dist

Bitbucket Pipelines

- step:
    image: composer:2
    script:
      - export COMPOSER_AUTH='{"http-basic":{"composer.meteorgpl.com":{"username":"token","password":"'"$METEORGPL_TOKEN"'"}}}'
      - composer install --no-interaction --prefer-dist

CircleCI

- run:
    name: composer install
    command: |
      export COMPOSER_AUTH='{"http-basic":{"composer.meteorgpl.com":{"username":"token","password":"'"$METEORGPL_TOKEN"'"}}}'
      composer install --no-interaction --prefer-dist

Mise en cache et builds reproductibles

Les dists sont immuables : conservez le répertoire de cache de Composer entre les exécutions (composer config cache-dir). Versionnez composer.lock ; chaque version publiée reste disponible, les installations sont donc reproductibles tant qu’une version n’est pas retirée.

Déployer à chaque nouvelle version

Un webhook (Paramètres → Webhooks) peut déclencher un workflow lorsqu’un paquet que vous utilisez reçoit une nouvelle version — par exemple un repository_dispatch qui exécute composer update et ouvre une pull request.

Envoyer votre avis

Ce qui fonctionne, ce qui ne fonctionne pas, ce qui manque : quelques mots suffisent.

Seulement si vous souhaitez une réponse.

Prise dans votre navigateur, sans cette fenêtre. Les mots de passe, ce que vous avez saisi dans les formulaires, les clés et les jetons sont exclus et remplacés par des blocs gris ; vous pouvez masquer d’autres zones avant l’envoi. Nous conservons les captures 90 jours.

Nous l’enregistrons avec l’adresse de la page, votre langue, la taille de la fenêtre, le navigateur et l’adresse IP, ainsi que votre adresse e-mail si vous en indiquez une. L’adresse IP et le navigateur sont supprimés après 90 jours. Politique de confidentialité.

Toutes les langues