Skip to main content

Configurer les déclencheurs

Un déclencheur se met en place en deux temps :

  1. Déclarer le déclencheur dans le workflow (éditeur, brick Déclencheur) : son nom et son type ;
  2. Configurer son fonctionnement par environnement : planning cron, secret webhook, activation, runner cible.

1. Déclarer dans l'éditeur​

Ouvrez le workflow dans le Studio et sélectionnez la brick Déclencheur (le point d'entrée du workflow). Son panneau liste les déclencheurs déclarés : cliquez sur Ajouter un déclencheur, nommez-le et choisissez son type :

  • Manuel : lancé à la demande depuis l'interface ;
  • Cron : lancé selon une planification ;
  • Webhook : lancé par un appel HTTP entrant.

Chaque déclencheur reçoit une clé stable, générée une fois pour toutes : elle survit aux renommages et aux montées de version, et c'est à elle que se rattache la configuration de chaque environnement.

Aucune valeur de planification ici

La brick ne contient ni cron, ni secret, ni cible d'exécution. Ces valeurs se règlent par environnement : c'est ce qui permet de planifier différemment dev et prod avec le même workflow.

2. Configurer par environnement​

Rendez-vous dans l'onglet Environnements du projet, ouvrez un environnement puis son sous-onglet Workflows. La section Déclencheurs liste, groupés par workflow, tous les déclencheurs déclarés dans les workflows du projet, chacun avec sa configuration propre à cet environnement.

Les déclencheurs d'un environnement Chaque carte croise un déclencheur déclaré avec sa configuration dans l'environnement : activation, planning ou secret, options communes.

Sur chaque carte :

  • l'interrupteur Activé allume ou éteint le déclencheur dans cet environnement uniquement (un déclencheur non configuré est désactivé par défaut) ;
  • Enregistrer sauvegarde la configuration (pensez-y avant de tester) ;
  • les champs affichés dépendent du type du déclencheur (ci-dessous).

Les modifications s'appliquent directement à l'environnement, sans redéploiement : elles ne font pas partie du contenu de la release.

Déclencheur cron​

  • Expression cron (5 champs) : par exemple 0 6 * * 1-5 (6 h du matin, du lundi au vendredi). Un aperçu Prochaine exécution se met à jour dès que l'expression est valide ;
  • Fuseau horaire : Europe/Paris, UTC… ;
  • Dates ponctuelles (optionnel) : des dates/heures précises d'exécution, en plus ou à la place du cron.

Déclencheur webhook​

  • URL du webhook : POST /api/etl/webhook/<uuid-du-workflow>, copiable d'un clic. L'URL est commune à tous les environnements ;
  • Secret : une chaîne propre à cet environnement, à transmettre dans l'en-tête HTTP x-webhook-secret.

C'est le secret qui sélectionne l'environnement : un même workflow peut exposer un webhook en dev et en prod, chacun avec son secret. La requête entrante est comparée aux secrets enregistrés ; l'environnement dont le secret correspond exécute sa release déployée sur son runner.

curl -X POST https://<votre-instance>/api/etl/webhook/<uuid-du-workflow> \
-H "x-webhook-secret: <secret-de-l-environnement>"

Un secret inconnu (ou un déclencheur désactivé) est refusé ; si l'environnement résolu n'a pas de déploiement actif ou de runner en ligne, l'appel échoue avec une erreur explicite.

Déclencheur manuel​

Aucun réglage particulier : le déclenchement se fait à la demande, via Lancer maintenant.

Options communes​

Quel que soit le type :

OptionEffet
ParallélismeAutorise plusieurs exécutions simultanées du workflow.
Stop on errorInterrompt l'exécution à la première erreur.
Cible d'exécutionLe runner (ou cluster de runners) qui exécute (par défaut, celui de l'environnement).

Lancer maintenant​

Chaque carte propose Lancer maintenant : le workflow s'exécute immédiatement sur l'environnement, avec sa release déployée et ses valeurs de variables et connexions.

Lancer un workflow sur l&#39;environnement « Lancer maintenant » exécute la version déployée du workflow sur le runner de l'environnement.

Un déploiement actif est requis

« Lancer maintenant » n'est possible que si l'environnement a un déploiement actif rattaché à un runner. Sinon le bouton est désactivé : déployez d'abord une release (voir Environnements et déploiement).

Et ensuite ?​