Votre premier pipeline en 3 minutes
Vous allez construire : une application qui reçoit des événements sur un topic, les filtre avec une règle, et vous montre le résultat en direct.
Prérequis
- Pulse installé en local — ou sautez toute installation et exécutez ceci dans le playground.
- Un terminal. C'est tout — pas de compte, pas de cloud.
1 · Démarrez un Pulse local en mode dev
pulse server start --dev
Pulse démarre en local (HTTP sur :9090) et la CLI se connecte automatiquement. Laissez-le tourner ; ouvrez un second terminal pour la suite.
2 · Générez l'application
pulse new hello --source webhook --stage rule-based:triage
Crée ./hello avec trois fichiers : pulse.yaml (toute l'application), sample.json (un événement de test à envoyer), README.md.
Le squelette est déjà valide — vous pouvez le déployer avant de modifier quoi que ce soit.
3 · Déployez
cd hello
pulse secret set PULSE_WEBHOOK_SECRET dev-secret # la source webhook générée l'exige
pulse deploy .
Met en place : la source webhook, le stage triage, la chaîne de topics hello.in → hello.triage.out, et une API HTTP typée.
4 · Envoyez un événement
pulse events publish --topic hello.in --value @sample.json
5 · Regardez-le ressortir de l'autre côté
pulse events tail --topic hello.triage.out
Votre événement apparaît, après avoir passé la règle de triage. Ce tail reste actif — chaque futur événement s'y affiche en temps réel.
Ce qui vient de se passer
Vous avez déployé un vrai pipeline d'événements, pas un script : la source, le stage et la sortie sont des pièces indépendantes chaînées par des topics. hello.in et hello.triage.out sont des topics durables — n'importe quoi peut publier dans le premier et n'importe quoi peut s'abonner au dernier. Chaque application que vous construirez à partir d'ici a cette même forme, avec des milieux plus intéressants.
Dépannage
pulse: command not found
Pulse n'est pas dans votre PATH. Relancez l'installeur ou utilisez le playground — le tutoriel y fonctionne à l'identique.
Le deploy dit que le serveur est injoignable
Le serveur dev de l'étape 1 ne tourne pas (ou vous avez fermé ce terminal). Relancez-le avec pulse server start --dev et gardez-le ouvert.