Configurer des déclencheurs de pipeline
Un déclencheur est ce qui démarre un pipeline. Chacun est un nœud sur le canevas, déposé depuis la section Déclencheurs de la bibliothèque de nœuds. Sélectionner ce nœud ouvre son inspecteur à droite — il n’y a pas de liste de déclencheurs toujours affichée, pas d’onglet Déclencheurs et pas d’écran des déclencheurs.
Ouvrir l’inspecteur d’un déclencheur
Section intitulée “Ouvrir l’inspecteur d’un déclencheur”- Allez dans Paramètres → Espace de travail → Modèles de pipeline.
- Appuyez sur le crayon de la ligne du modèle pour ouvrir l’éditeur.
- Sélectionnez un nœud de déclencheur sur le canevas. Le panneau de droite apparaît avec les paramètres de ce déclencheur. Lorsque rien n’est sélectionné, le panneau est masqué.
Ajouter un déclencheur
Section intitulée “Ajouter un déclencheur”La section Déclencheurs de la bibliothèque de nœuds présente chaque type de
départ comme son propre nœud : manuel, planification, webhook, et une carte par
événement de domaine. Recherchez merged, ticket ou le nom du type
(PrMerged) et glissez la carte sur le canevas. Un nouveau modèle affiche aussi
une tuile fantôme Ajouter un déclencheur à l’ancre d’entrée — choisissez
dans la même liste avec recherche.
Le déclencheur est inséré immédiatement. Les nouveaux déclencheurs automatiques sont désactivés au départ, de sorte qu’un dépôt sur le canevas ne lance pas une exécution avant que vous ne l’ayez configuré. Utilisez l’interrupteur Activé de l’inspecteur pour l’activer, ou l’icône de corbeille pour le supprimer.
Autoriser les exécutions manuelles
Section intitulée “Autoriser les exécutions manuelles”Déposez Exécution manuelle (ou choisissez-le dans la tuile fantôme) et
activez Activé dans son inspecteur. C’est ce qui fait apparaître le modèle
dans le sélecteur d’exécution. Ce n’est pas un cas particulier — l’interrupteur
écrit une ligne de déclencheur ordinaire dont le type d’événement est manual.
La modification est enregistrée immédiatement; il n’y a rien à sauvegarder.
Le même interrupteur se trouve derrière Exécution manuelle dans l’en-tête de l’éditeur, où il côtoie les entrées déclarées du modèle.
Sur un événement
Section intitulée “Sur un événement”Ces événements démarrent une exécution :
| Libellé dans le sélecteur | Événement |
|---|---|
| PR externe ouverte | ExternalPrDetected |
| PR publiée | PullRequestPublished |
| Statut de la PR modifié | PullRequestStatusChanged |
| PR fusionnée | PrMerged |
| Message reçu | MessageReceived |
| Ticket créé | TicketCreated |
| Statut du ticket modifié | TicketStatusChanged |
| Ticket assigné | TicketAssigned |
| Tâche terminée | TicketCompleted |
| Tâche échouée | TicketFailed |
| Tâche annulée | TicketCancelled |
| Seuil de budget dépassé | BudgetThresholdCrossed |
| Dépôt ajouté | RepoAdded |
| Enregistrement de la réunion arrêté | MeetingRecordingStopped |
| Compétence mise à jour | SkillUpdated |
| Espace supprimé | SpaceDeleted |
SpaceDeleted est ce sur quoi écoute le pipeline intégré de nettoyage des
arbres de travail : il porte l’identifiant de l’espace supprimé, de sorte que
l’exécution récupère exactement les arbres de travail de cet espace plutôt que
de balayer tout l’espace de travail.
Pour connaître les clés de charge utile que porte chaque événement, consultez la référence des événements de domaine.
Filtrer un déclencheur d’événement
Section intitulée “Filtrer un déclencheur d’événement”Sélectionnez le nœud Statut de la PR modifié. Les puces de statut de
l’inspecteur sont le seul filtre que l’interface peut créer. Touchez l’une des
valeurs merged, closed, approved, opened, reopened; le déclencheur ne
se déclenche alors que lorsque le status de l’événement correspond à l’une
d’elles. Si aucune puce n’est sélectionnée, il n’y a aucun filtre.
Il n’y a pas de champ de filtre JSON libre. Une clé de filtre que la charge utile de l’événement ne porte pas ne correspond jamais; n’en rédigez donc pas une à la main contre une clé que vous n’avez pas confirmée dans la référence des événements de domaine.
Selon un calendrier
Section intitulée “Selon un calendrier”Sélectionnez le nœud Calendrier pour modifier le moment du déclenchement. Les champs de l’inspecteur sont conservés tels que vous les laissez :
| Champ | Description |
|---|---|
| Planification (cron ou every:secondes) | Une expression cron à cinq champs telle que 0 9 * * 1, ou un intervalle tel que every:86400. Un nombre seul est converti en every:<n>. |
| Fuseau horaire (facultatif) | Un fuseau IANA tel que Europe/Paris. La valeur par défaut est UTC. |
| En cas d’exécutions manquées | Quoi faire des déclenchements manqués pendant que le serveur était arrêté : Exécuter une fois regroupe tous les créneaux manqués en un seul déclenchement au redémarrage (valeur par défaut), Ignorer reprend au prochain créneau futur. |
La ligne de résumé de la tuile du canevas n’explicite l’intervalle que pour la
forme every:<seconds>; une expression cron s’affiche simplement comme
« Calendrier ».
Par un webhook
Section intitulée “Par un webhook”Déposer Webhook génère un jeton aléatoire. Sélectionnez le nœud pour copier
le chemin POST /webhooks/<token> depuis l’inspecteur.
Le jeton est aussi le secret HMAC : la requête doit porter
X-Hub-Signature-256: sha256=<hex>, où le hex est HMAC-SHA256(body, token).
Une livraison qui échoue à la vérification est rejetée et consignée, et elle ne
peut pas être rejouée. Les doublons sont ignorés selon leur clé de
déduplication.
Chaque départ est son propre nœud de graphe. Tirer un fil depuis Calendrier ne rattache que Calendrier; Exécution manuelle peut emprunter un chemin différent (par exemple un nœud de condition) avant de rejoindre le même travail. Une exécution entre par le départ qui correspond à son type d’événement et saute les sous-graphes qui appartiennent aux autres départs.
Comment un déclencheur mène à une exécution
Section intitulée “Comment un déclencheur mène à une exécution”Un déclencheur activé dont le type d’événement et le filtre correspondent tous
deux démarre une exécution avec la charge utile de l’événement comme charge
utile de déclenchement de l’exécution — c’est à partir de quoi {{key}} se
résout dans l’invite ou le script d’une étape. Les événements qui portent une
clé naturelle sont dédupliqués, de sorte qu’un même événement qui se produit
deux fois ne démarre pas deux exécutions.
Un modèle désactivé est refusé même lorsque son déclencheur correspond. Huit des treize modèles intégrés sont livrés désactivés, de sorte que leurs déclencheurs amorcés se déclenchent dans le vide tant que vous n’activez pas le modèle.
Patrons utiles
Section intitulée “Patrons utiles”- Ne filtrer que le chemin manuel — reliez Exécution manuelle à un nœud de condition, et Calendrier directement au travail. Chaque départ possède ses propres fils.
- Examiner chaque nouvelle PR — événement PR publiée sur le modèle
pr_review. - Nettoyer après une fusion — événement Statut de la PR modifié, filtré
sur
merged/closed/approved. Le modèle intégrépr_merged_cleanupécoute déjà de cette façon, en plus de ticket terminé/annulé,SpaceDeleted, et d’une planification quotidienne activée de force à chaque réamorçage parce qu’il s’agit de la collecte des déchets. - Balayage nocturne — planification
0 2 * * *avec un fuseau horaire, sur un modèle dont le premier nœud est un script bash. - Réagir à un système externe — un déclencheur de webhook, le système appelant signant le corps de sa requête comme ci-dessus.
Guides connexes
Section intitulée “Guides connexes”- Créer un modèle de pipeline
- Exécuter un pipeline manuellement
- Surveiller les exécutions de pipeline
- Référence des événements de domaine