⚙️ Save your workflows into a Gitlab repository
⚡ 6,130 views · ⚙️ DevOps & CI/CD
💡 Pro Tip — If you need GitHub data beyond what the REST API gives you, ScraperNode has a repository scraper that extracts metadata at scale without token rate limits.
Description
This template is inspired by Save your workflows into a GitHub repository by hikerspath and Back Up Your n8n Workflows To Github by jon-n8n.
Basic
Retrieve all workflows from an n8n instance and save it on a gitlab project. If the workflow exist, il will only save the changes.
Flow
What the workflow does :
- Sets custom parameters
- Gets workflows
- Iterates through each workflow one by one
- Get the file from Gitlab if exists
- Compare the files as objects (not as strings)
- Return a status on the workflow
- Create, Edit or ignore the file depending on the status
- Return a list of status for each workflow
Configuration
Select a credential in each Gitlab nodes.
Edit the data in node “Globals” :
- repo.owner : slug of the user or team owning the repo
- repo.name : slug of the repository
- repo.branch : branch to commit on
- repo.path : from root of the repository. Should end with /
Comments
Error on gitlab nodes will not stop the run but will list the current workflow as error in the results
Some fields are ignored to determined if there is changes :
- updatedAt : should be ignored if only ignores fields are changed
- globals : it’s running information, no need to follow the changes
🔗 Nodes Used
GitLab, n8n, Extract from File
📥 Import
Download workflow.json and import into n8n:
Workflow menu → Import from File