CLI et barrière en CI
Une seule commande sans dépendance lance une suite, attend le verdict et se termine avec un code que votre pipeline comprend. PASS déploie ; FAIL bloque ; INCONCLUSIVE, c’est à vous de décider.
Installation
La CLI est un unique script Node 22 sans dépendance : elle s’exécute donc directement depuis le dépôt ou depuis npm :
npx @colvo/cli run --project <project id> --waitConfiguration
| Option / env | Signification |
|---|---|
| COLVO_API_KEY | Clé backend (cak_…). Obligatoire. |
| COLVO_API_URL | Par défaut https://colvo.app. |
| --project | Identifiant du projet. Obligatoire. |
| --build | Identifiant du build de l’agent ; par défaut celui du projet. |
| --scenarios | Clés de modèles séparées par des virgules ; par défaut : toute la bibliothèque. |
| --repeats | 1–5, 3 par défaut. |
| --label | Texte libre affiché dans la console (par ex. le commit). |
| --wait / --no-wait | Attendre le verdict (par défaut) ou simplement lancer. |
| --timeout | Minutes d’attente, 15 par défaut. |
| --inconclusive-exit | Code de sortie pour INCONCLUSIVE : 0, 1 ou 2 (par défaut). |
Codes de sortie
| Code | Signification |
|---|---|
| 0 | PASS |
| 1 | FAIL — un défaut avéré ; ne déployez pas |
| 2 | INCONCLUSIVE — pas un défaut avéré, mais ne déployez pas à l’aveugle (configurable) |
| 3 | Erreur d’utilisation, d’API ou de délai dépassé (y compris la limite d’offre 402) |
GitHub Actions
name: colvo-gate
on: [push]
jobs:
suite:
runs-on: ubuntu-latest
steps:
- uses: actions/setup-node@v4
with: { node-version: 22 }
- name: Run the COLVO suite
env:
COLVO_API_KEY: ${{ secrets.COLVO_API_KEY }}
run: npx @colvo/cli run --project ${{ vars.COLVO_PROJECT_ID }} --label "${{ github.sha }}" --waitFaites pointer le build vers un déploiement de staging de votre agent (un build dont l’endpoint est l’URL de prévisualisation) et la barrière s’exécute à chaque push. GitLab CI, CircleCI et un simple shell fonctionnent de la même façon ; seul le code de sortie compte.