Aller au contenu principal

Azure Logic Apps ⇄ Pulse

Intermédiaire ⏱ 10 min azure · workflow.json · http natif · 🧪 workflow validé en live

Logic Apps possède le workflow et parle HTTP nativement (l'action Http) — comme Cloud Workflows, Pulse n'a besoin d'aucune fonction de glue. Exemple du repo : examples/azure-logic-apps-pulse-bridge/.

Send_to_Pulse (Http POST → /x/order-scoring/in) → Wait 2s → Read_verdict (Http GET) → If contains(body, orderId) → Escalate | Auto_approve

Lancez-le en local — le vrai workflow.json

pulse server start --dev
mkdir app && cp pulse.yaml app/ && (cd app && pulse deploy .)
pip install requests
PULSE_URL=http://localhost:9090 python run_local.py

run_local.py est un mini-interpréteur Logic Apps qui exécute le même workflow.json que vous déploieriez sur Azure — les actions Http, le Wait, le contains du If, l'ordre runAfter, et les expressions @{parameters()} / @triggerBody() / @body(). Sortie validée :

amount= 2500 -> decision=escalate
amount= 300 -> decision=auto-approve

Déployer sur le vrai Azure

Créez une Logic App (Consumption), collez workflow.json dans la vue code (ou ARM/Bicep), réglez les paramètres pulseUrl et pulseToken, et POSTez une commande sur l'URL du trigger Request. En production : le JWT dans Key Vault, VNet integration si Pulse est privé. Le statut 🧪 : workflow prouvé contre un Pulse vivant ; le run hébergé Azure demande votre souscription.

Ensuite