Contrôle de Version GitHub Dynamique pour l'Automatisation - Workflow n8n

Simplifiez vos pratiques DevOps grâce à ce workflow n8n spécialisé. Intégrez GitHub pour le contrôle de version, comparez les états locaux des workflows n8n et gérez les commits facilement.

Aperçu du workflow

Prêt à automatiser ?

Téléchargez ce modèle de workflow n8n et commencez à l'utiliser instantanément.

À qui s'adresse cette solution ?

• Spécialistes de l'automatisation nécessitant un contrôle de version pour leurs projets.
• Équipes DevOps gérant les modèles n8n de production et de staging.
• Utilisateurs ayant besoin de comparer les différences entre leur workflow n8n actif et sa sauvegarde distante sur GitHub.
• Développeurs recherchant des outils robustes de gestion des changements pour leurs projets n8n.

Vue d'ensemble

Gérer les modifications apportées à une logique d'automatisation cruciale peut s'avérer complexe sans un contrôle de version adéquat. Ce workflow n8n complexe résout ce problème en agissant comme une interface de contrôle de version, reliant directement vos workflows n8n actifs à GitHub. Il utilise plusieurs webhooks de déclenchement n8n pour gérer quatre opérations clés : lister les flux disponibles, récupérer l'état du workflow, comparer les changements locaux avec GitHub et valider (commiter) les mises à jour. En exploitant le nœud n8n, cette solution récupère les données du workflow en direct, les emballe, puis utilise le nœud n8n GitHub pour gérer les opérations sur les fichiers (lectures et commits), créant ainsi un environnement de développement fluide et auditable pour vos modèles n8n.

Fonctionnement

Ce puissant workflow n8n opère à travers quatre branches opérationnelles distinctes, chacune initiée par un webhook de déclenchement n8n dédié :


  1. Génération de l'IHM (Liste des Workflows GitHub) : Un déclencheur webhook (Webhook-ideogener8r) capture la requête. Le flux définit les variables nécessaires et utilise le nœud n8n GitHub pour récupérer une liste des fichiers de workflow. Ces données sont agrégées et transmises au nœud n8n HTML-UI, qui rend une interface utilisateur fonctionnelle, répondant via le nœud n8n Respond with UI.

  2. Comparaison des Workflows : Le webhook Get-Workflow-Changes initie une comparaison. Le flux récupère d'abord le JSON du workflow spécifié depuis GitHub en utilisant le nœud n8n GitHub. Il utilise ensuite le nœud n8n Get n8n Workflow pour obtenir la définition active du même workflow n8n depuis l'instance locale. Un nœud Code n8n subséquent (ComapreNodes) exécute la logique pour mettre en évidence les différences, et le résultat est renvoyé via une réponse webhook.

  3. Liste des Workflows Locaux : Le déclencheur Get-n8n-workflows utilise le nœud n8n n8n | get wf1 pour récupérer la liste de tous les modèles n8n actifs sur l'instance. Cette liste est traitée et renvoyée via un webhook pour affichage dans le panneau de contrôle.

  4. Validation (Commit) des Changements : Le webhook submit-form gère l'enregistrement des mises à jour. Il détermine si l'utilisateur modifie un workflow existant ou en crée un nouveau via le nœud n8n Switch1. Les deux chemins utilisent un nœud n8n pour récupérer le contenu actuel du workflow avant de le transmettre au nœud n8n GitHub approprié (Commit Workflow Edit ou Commit New File) pour finaliser le processus de contrôle de version. Chaque commit utilise le nœud n8n GitHub pour assurer la synchronisation entre le workflow n8n actif et le dépôt distant.

Guide d'installation

Pour déployer ce workflow n8n complet :


  1. Importation : Copiez les données JSON fournies et collez-les dans votre instance n8n en utilisant la fonction 'Nouveau' -> 'Importer depuis JSON'.

  2. Informations d'identification : Vous devrez configurer deux ensembles principaux d'informations d'identification :

Identifiants GitHub : Configurez les connexions du nœud n8n GitHub pour autoriser l'accès à votre dépôt (la portée du dépôt et les permissions de lecture/écriture de fichiers sont nécessaires).
Identifiants API n8n : Configurez les connexions des nœuds n8n en utilisant une clé d'API personnelle ou une authentification de base permettant la lecture et l'écriture des workflows de votre instance n8n locale. Ceci est vital car le nœud n8n doit récupérer les définitions actives.

  1. URL des Webhooks : Après l'activation, récupérez les URL des Webhooks pour les quatre nœuds de déclenchement n8n (Webhook-ideogener8r, Get-Workflow-Changes, Get-n8n-workflows, et submit-form). Ces URL sont utilisées par les composants d'interface utilisateur front-end qui pilotent ce système de contrôle de version.

  2. Configuration des Chemins : Ajustez les paramètres dans les différentes instances de nœuds n8n Set (par exemple, Set Workflow Variables, Set GH Repo and Path3) pour pointer vers votre nom de dépôt GitHub spécifique et les chemins de fichiers désirés pour l'enregistrement de vos fichiers de workflow n8n.

Détails du nœud

Webhook (Multiples Déclencheurs) : Agit comme le point d'entrée (n8n trigger) pour l'interaction de l'IHM, les requêtes de comparaison et les soumissions de commits.
Nœud n8n Set : Utilisé intensivement (par exemple, Set Workflow Variables, Set Flows) pour extraire, renommer et définir des variables telles que le nom du dépôt, les chemins de fichiers et les ID de workflow nécessaires aux opérations subséquentes des nœuds GitHub et n8n.
Nœud n8n (par exemple, n8n | get wf1, Get n8n Workflow) : Essentiel pour la communication avec l'API n8n elle-même. La fonction principale est de lister tous les workflows n8n existants (getAll) ou de récupérer la définition JSON d'un workflow n8n spécifique (get) basé sur son ID.
Nœud n8n GitHub : Gère toutes les opérations de contrôle de version, y compris la liste des fichiers dans le dépôt, la lecture du contenu d'un fichier de workflow n8n stocké, et la validation (commit) du JSON de workflow nouveau ou modifié vers le dépôt distant.
Nœud n8n HTML : Utilisé dans le flux initial (HTML-UI) pour générer et servir dynamiquement l'interface utilisateur qui interagit avec les autres points d'accès webhook, créant ainsi efficacement une interface dédiée pour la gestion des modèles n8n.
Nœud n8n Respond to Webhook : Renvoie des données (IHM HTML, résultats de comparaison ou confirmations de commit) à l'utilisateur ou au client demandeur après l'exécution du chemin du workflow n8n.


  • Nœud n8n Switch (Switch1) : Détermine le chemin d'exécution lors d'une soumission, distinguant la mise à jour d'un fichier de workflow n8n existant de la création d'un nouveau fichier dans le dépôt GitHub.

Workflows n8n associés

Payant

Nœuds: 11 Nœuds
Mis à jour: Décembre 26 2025
Voir tout

En vedette*