Backup n8n Workflows to Bitbucket(将 n8n 工作流备份到 Bitbucket)

该工作流旨在自动将所有工作流备份到 Bitbucket 代码仓库,确保数据安全和版本管理。它每天定时执行,自动检测工作流的新增或变更,并仅同步需要更新的部分,节省资源。同时,通过动态计算请求间隔,规避 API 调用频率限制,保证备份过程的高效稳定。适用于需要定期备份和管理自动化流程的团队和个人。

Tags

n8n备份Bitbucket同步

工作流名称

Backup n8n Workflows to Bitbucket(将 n8n 工作流备份到 Bitbucket)

主要功能和亮点

本工作流实现了自动将所有 n8n 平台上的工作流备份同步到 Bitbucket 代码仓库。它支持每天定时执行,自动检测工作流是否有新增或变更,智能避免重复上传,并通过动态计算等待时间来规避 Bitbucket API 的调用频率限制,保证备份过程稳定高效。

解决的核心问题

  • 自动化备份 n8n 工作流,防止工作流数据丢失
  • 实时监测工作流变更,仅同步新增或修改的工作流,节省资源
  • 应对 Bitbucket API 速率限制,防止因频繁请求导致失败
  • 定时执行,无需人工干预,确保备份持续有效

应用场景

  • n8n 工作流开发团队希望将所有工作流版本化管理
  • 自动备份关键的自动化流程配置,保障业务连续性
  • 需要将工作流配置作为代码存储,方便审计和回滚
  • 企业或个人用户希望定期同步工作流到云端代码仓库

主要流程步骤

  1. 定时触发(Run Daily at 2 AM):每天凌晨2点启动备份流程
  2. 设置 Bitbucket 仓库信息(Set Bitbucket Workspace & Repository):配置目标仓库工作区和仓库名
  3. 获取所有 n8n 工作流(Get All Workflows):从 n8n 系统拉取所有工作流列表
  4. 循环处理每个工作流(Loop Workflows)
  5. 查询 Bitbucket 上对应工作流文件(Get Existing Workflow from Bitbucket):检查仓库中是否存在该工作流文件
  6. 判断是否为新建或更新(New or Changed?):对比本地与仓库中的工作流内容
  7. 上传更新的工作流(Upload Workflow to Bitbucket):将新增或变更的工作流 JSON 文件提交至 Bitbucket
  8. 计算等待时间(Calculate Wait Time):根据 Bitbucket API 返回的速率限制信息动态调整请求间隔
  9. 延时等待,避免触发限流(Wait to Avoid Rate Limiting)
  10. 继续处理下一个工作流,直到全部同步完成

涉及的系统或服务

  • n8n:自动化工作流平台,作为工作流数据源
  • Bitbucket:代码托管服务,保存工作流版本和备份
  • HTTP 请求节点:与 Bitbucket API 交互,获取和提交文件
  • 定时触发器:实现每日自动执行
  • 代码节点:动态计算等待时间,优化请求频率

适用人群或使用价值

  • n8n 自动化平台的运维人员和开发者
  • 需要保障自动化工作流安全与版本管理的团队
  • 希望实现自动化备份与版本控制的个人或企业用户
  • 通过代码仓库管理工作流,方便追踪历史变更和协作的团队

该工作流不仅提升了工作流管理的安全性和规范性,还有效避免了因速率限制带来的接口调用失败风险,助力用户轻松实现自动化工作流的持续备份与版本控制。

推荐模板

GitHub 事件触发器

该工作流通过实时监控指定 GitHub 仓库的各类事件(如推送、拉取请求、发布等),实现自动化的后续操作触发。解决了手动监控的繁琐问题,提升了开发、文档维护和项目管理的响应效率,适用于开发者、项目经理及运维人员,帮助他们更高效地应对代码库变更,推动团队协作与敏捷开发。

GitHub触发器n8n自动化

Retry on fail except for known error Template

该工作流实现了智能的自动重试机制,可以有效管理自动化任务中的异常情况。它区别对待“已知错误”和其他错误,对于非已知错误会自动重试,直至达到最大次数;而已知错误则直接标记并跳过重试。此设计提升了流程的稳定性和资源利用效率,特别适用于API调用和数据同步等场景,确保在出现临时故障时能够迅速恢复。

自动重试已知错误识别

Netlify 部署失败通知自动化工作流

该工作流实时监控 Netlify 部署状态,一旦发生部署失败,即刻通过 Slack 发送详细通知,包含站点名称、错误信息及部署链接。这种自动化方式大幅提升了团队对部署问题的响应速度,确保关键故障信息不被遗漏,适合网站开发与运维团队使用,帮助快速定位和解决问题,保障项目上线的顺利进行。

Netlify部署自动通知

每周失败执行报告(Weekly failures report)

该工作流每周自动查询指定工作流的执行记录,筛选出过去一周内的失败执行,并通过Telegram推送汇总报告给用户。此功能帮助用户及时掌握工作流运行异常,提高运维效率,减少业务中断风险,适用于自动化运维团队和需要跟踪流程状态的企业用户。通过这一自动化机制,用户无需人工干预即可有效监控工作流健康状态。

n8n监控失败报告

Slack-GitHub User Info

该工作流通过接收Slack中的用户命令,自动查询指定GitHub用户名的详细信息,并将整理后的资料以消息形式发送回Slack,方便团队成员快速获取开发者信息。它有效解决了手动查找信息的繁琐,提升了沟通效率与协作体验。结合Webhook触发、GraphQL灵活查询和自定义函数,确保信息准确无冗余,适用于开发团队、项目管理者和人力资源等多种场景。

Slack集成GitHub查询

错误通知工作流(Error Notification Workflow)

该工作流专注于自动捕获和处理其他工作流中的错误事件,实时生成错误提示信息,并通过Telegram发送给指定群组。此机制有效缩短故障响应时间,提升系统稳定性,确保运维和业务人员能够及时掌握问题,适用于自动化流程监控、统一错误管理及DevOps团队的状态跟踪。通过简单配置,用户可实现高效的错误通知,保障业务连续性。

错误通知自动告警

FetchGithubIssues

该工作流定时从指定的GitHub仓库获取最新的“Bug”标签开放问题,重点关注评论少于5的关键问题。每10分钟自动抓取并筛选符合条件的Issue,将其标题和链接实时推送到指定的Telegram用户,实现快速的Bug监控和通知。这种方式帮助开发团队及时掌握项目中的重要缺陷,提升问题响应速度和沟通效率,简化了手动监控的流程。

GitHub监控Bug通知

n8n_check

该工作流定时监控 n8n 官方 GitHub Releases 的 RSS Feed,自动筛选当天内发布的特定关键字的新版本信息。通过 Telegram 群组和 AWS SES 邮件进行推送通知,确保用户及时获知重要更新。支持每天定时运行及手动触发,帮助运维人员和开发者高效跟踪工具状态,提升信息获取的时效性与便利性,避免频繁手动检查。

n8n监控版本通知