Intégration Jenkins n8nAutomatiser Jenkins avec n8n.
Un job Jenkins peut démarrer sur autre chose qu'une ligne de cron. L'intégration Jenkins n8n donne 11 opérations réparties sur 3 ressources : lister les builds, créer ou copier un job, le lancer avec ou sans paramètres, piloter l'instance. Jenkins n'a pas de nœud trigger, le workflow démarre donc ailleurs.
Avis vérifiés sur Trustpilot · Agence IA, automatisation & growth
À quoi sert l'intégration Jenkins n8n ?
C'est le nœud Jenkins, livré avec n8n, qui appelle l'API Remote Access de ton instance avec un credential à token API (un credential, c'est la fiche de connexion enregistrée une fois dans n8n). Trois ressources sont couvertes : Build, Instance et Job. Depuis un workflow, tu listes les builds d'un job, tu crées un job à partir de son XML de configuration, tu en copies un existant, tu lances un build avec ou sans paramètres, et tu mets l'instance en mode calme ou tu la redémarres.
Premier cas : un build lancé par autre chose que Jenkins. Une validation tombe dans un formulaire, une ligne change dans un outil métier, et le workflow appelle job.trigger sur le bon job. Même logique depuis un événement GitHub quand tu veux que la décision de builder se prenne dans ton workflow, pas dans une configuration enterrée côté Jenkins.
Deuxième cas : l'historique des builds là où l'équipe le lit vraiment. build.getAll ramène les builds d'un job, et le nœud suivant les pose où il faut, une table Postgres pour un point hebdo, un canal Slack pour les derniers échecs. Attention au champ Return All : décoché, n8n s'arrête à Limit au lieu de parcourir tout l'historique.
Troisième cas : la maintenance sans personne dans un terminal. Avant une fenêtre planifiée, le workflow appelle instance.quietDown pour qu'aucun nouveau build ne démarre, laisse les jobs en cours se terminer, puis enchaîne sur instance.safeRestart ou instance.safeExit. Fenêtre annulée ? instance.cancelQuietDown remet l'instance en service.
La création de job mérite une précision. job.create attend le XML d'une configuration Jenkins : ce XML, le workflow doit le porter, depuis un gabarit stocké dans un nœud précédent, un fichier lu plus tôt, ou une chaîne assemblée en cours de route. job.copy est le raccourci quand un job existant fait déjà office de modèle.
Si un endpoint de l'API Jenkins ne fait pas partie de ces 11 opérations, le nœud HTTP Request l'appelle directement et réutilise le même credential Jenkins via l'authentification prédéfinie : rien ne t'oblige à sortir de n8n. Comme il n'y a pas de nœud trigger Jenkins, prévois l'entrée du workflow : Schedule Trigger à intervalle fixe, Webhook n8n appelé par un service tiers, ou le trigger d'un autre outil. L'Avis n8n détaille ce que ce choix change sur des workflows longs, et la Formation n8n reprend les credentials et les expressions pas à pas.
Comment connecter n8n à ton instance Jenkins ?
- 01
Générer un token API personnel dans Jenkins
Ouvre le profil de l'utilisateur au nom duquel le workflow agira, puis profile details, Configure, Add new token. Jenkins affiche le token une seule fois : copie-le tout de suite. Le système de tokens a été refait en 2018, et une instance plus ancienne peut encore traîner des tokens dits legacy. À partir de Jenkins 2.129, vérifie que le token créé n'est pas un token legacy, sinon les appels de n8n échouent à l'authentification.
- 02
Créer le credential Jenkins dans n8n
Dans n8n, ouvre le menu Credentials et ajoute un credential Jenkins. Trois valeurs à renseigner. Jenkins Username : l'utilisateur à qui appartient le token, pas un nom d'affichage. Personal API Token : la valeur que tu viens de copier. Jenkins Instance URL : l'URL de base de l'instance que n8n va appeler. Un credential se crée une fois et se réutilise partout, donc un deuxième nœud Jenkins le retrouve dans sa liste déroulante.
- 03
Pointer le nœud sur un job et l'exécuter une fois
Ajoute le nœud Jenkins, choisis la ressource et l'opération, puis regarde Job Name or ID. C'est une liste déroulante alimentée par ton instance, ce qui en fait un test de connexion gratuit : si la liste des jobs se remplit, le credential fonctionne. Tu peux aussi quitter la liste et passer une expression comme
{{ $json.job }}quand le nom du job vient du nœud précédent. Exécute le nœud une fois avant de câbler la suite.
Ce que le nœud Jenkins sait faire, opération par opération
Le nœud Jenkins expose 11 opérations sur 3 ressources. Pour chacune : le nœud tel que tu le configures dans n8n, les champs obligatoires, et nos notes de terrain.
| Ressource | Create | Get Many | Cancel Quiet Down | Copy | Shutdown | Quiet Down | Restart | Safely Shutdown | Safely Restart | Trigger | Trigger with Parameters |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Build | ✓ | ||||||||||
| Instance | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |||||
| Job | ✓ | ✓ | ✓ | ✓ |
Sommaire des opérations
Build
1 opérationGet many builds
build.getAllCe que tu vois dans n8n
Notes & cas d'usage
Renvoie l'historique des builds d'un job, chaque build avec les données que Jenkins conserve. C'est l'opération de lecture du nœud, celle qu'on place avant un rapport ou une vérification.
Paramètres clés
- Job Name or ID : le job dont tu veux les builds, pris dans la liste déroulante alimentée par ton instance, ou passé en expression du type
{{ $json.job }}quand il vient du nœud précédent. - Return All : coché, n8n enchaîne les pages et ramène tout l'historique ; décoché, il s'arrête à Limit, qui fixe le nombre maximal de builds renvoyés.
Instance
6 opérationsCancel Quiet Down an instance
instance.cancelQuietDownCe que tu vois dans n8n
Notes & cas d'usage
Lève le mode calme et laisse Jenkins accepter de nouveau des builds. C'est le pendant de l'opération de mise en mode calme, sans aucun paramètre à remplir : le nœud agit sur l'instance du credential sélectionné, rien d'autre à préciser.
Quiet Down an instance
instance.quietDownCe que tu vois dans n8n
Notes & cas d'usage
Place Jenkins en mode calme : plus aucun build ne démarre, ceux en cours vont au bout, et l'instance est prête pour un arrêt. Rien n'est obligatoire, ce qui en fait une étape en un clic dans un workflow plus large.
Paramètres clés
- Reason : texte libre expliquant pourquoi l'instance passe en mode calme. Jenkins l'affiche à qui regarde l'instance, donc une ligne avec le numéro du ticket de changement évite une série de questions.
Restart an instance
instance.restartCe que tu vois dans n8n
Notes & cas d'usage
Redémarre Jenkins immédiatement, sur les environnements où c'est possible. Le mot important est immédiatement : ce qui est en train de builder à cet instant n'ira pas au bout. Aucun paramètre, l'opération s'applique à l'instance du credential.
Safely Restart an instance
instance.safeRestartCe que tu vois dans n8n
Notes & cas d'usage
Demande à Jenkins de redémarrer une fois qu'aucun job ne tourne. Jenkins attend que la file se vide au lieu de couper : c'est toute la différence avec la version immédiate. Là non plus, rien à configurer.
Safely Shutdown an instance
instance.safeExitCe que tu vois dans n8n
Notes & cas d'usage
Arrête Jenkins une fois qu'aucun job ne tourne. Même patience que le redémarrage safe, sauf que l'instance ne revient pas toute seule : il faut quelque chose en dehors de Jenkins pour la relancer. L'opération ne prend aucun paramètre.
Shutdown an instance
instance.exitCe que tu vois dans n8n
Notes & cas d'usage
Coupe Jenkins tout de suite, sans attendre les jobs en cours. Les builds en route sont interrompus là où ils en sont, parfois c'est exactement ce qu'on veut, parfois c'est une mauvaise surprise. Aucun champ à remplir, le credential décide quelle instance est visée.
Job
4 opérationsCopy a job
job.copyCe que tu vois dans n8n
Notes & cas d'usage
Duplique un job existant sous un nouveau nom, en gardant la configuration de l'original. Plus rapide que de refaire une configuration à la main quand le job source est déjà proche de la cible.
Paramètres clés
- Job Name or ID : le job à copier, choisi dans la liste alimentée par ton instance ou donné en expression.
- New Job Name : le nom du job que Jenkins va créer. Il doit être libre sur l'instance, donc compose-le à partir des données du flux, par exemple le nom de la branche porté par l'item.
Create a job
job.createCe que tu vois dans n8n
Notes & cas d'usage
Crée un job de zéro sur l'instance, à partir du XML de configuration attendu par Jenkins. Le workflow doit porter ce XML : prévois d'où il vient avant de câbler le nœud.
Paramètres clés
- New Job Name : le nom du job à créer sur l'instance.
- XML : le XML de configuration Jenkins qui définit le job. Le plus souvent une expression qui pointe vers un gabarit porté par un nœud précédent, avec les parties variables remplacées dans le flux.
Trigger a job
job.triggerCe que tu vois dans n8n
Notes & cas d'usage
Lance un build du job choisi, version simple, sans paramètre de build. Celle qu'on prend quand le job sait déjà quoi faire tout seul.
Paramètres clés
- Job Name or ID : le job à lancer, pris dans la liste déroulante que n8n remplit depuis ton instance, ou défini par une expression comme
{{ $json.jobName }}quand le nom voyage avec l'item.
Trigger a job with parameters
job.triggerParamsCe que tu vois dans n8n
Notes & cas d'usage
Lance un build en lui passant des paramètres, ce qui permet à un seul job de servir plusieurs cas au lieu d'être cloné.
Paramètres clés
- Job Name or ID : le job paramétré à lancer, depuis la liste ou par expression.
- Parameters : les paramètres envoyés au job, ajoutés un par un avec Add Parameter. Les noms doivent correspondre à ceux déclarés par le job, et les valeurs peuvent venir du flux.
Besoin d'aide pour automatiser Jenkins avec n8n ?
L'équipe te répond directement.
Chaque message est lu par une personne.
