自动化每日工作流备份至GitHub

该工作流提供了一套自动化解决方案,可每日将您的所有n8n工作流备份至指定GitHub仓库。通过整合n8n API与GitHub API,确保您的工作流实现版本控制与安全存储,有效防范数据丢失并简化灾难恢复流程。

运作原理

自动化流程包含以下关键步骤:

  1. 定时触发:每天在预设时间自动启动工作流
  2. 列出已有备份:首先连接GitHub仓库获取已备份文件列表,用于判断是否需要创建或更新备份
  3. 获取n8n工作流:通过n8n REST API从您的n8n实例中提取当前所有工作流
  4. 处理准备:将每个工作流数据转为JSON格式并编码为base64,适配GitHub API文件操作
  5. 提交至GitHub
    • 生成标准文件名(如工作流名称-标签.json
    • 检查GitHub仓库是否存在同名文件
    • 存在则更新:覆盖旧版本
    • 新工作流则创建:在仓库新建文件
    • 每次提交均包含时间戳

该流程确保您的n8n工作流始终在GitHub版本控制系统中保持最新备份,提供完整的历史追溯能力。

前置条件

  • 运行中的n8n实例(自托管或云端)
  • GitHub账户
  • 用于存储备份的GitHub仓库
  • 具有repo权限的GitHub个人访问令牌
  • n8n实例API密钥

配置步骤

  1. 导入模板:将工作流导入n8n实例
  2. 配置n8n API凭证:在”获取工作流”节点填写实例URL和API密钥
  3. 配置GitHub凭证:在GitHub相关节点设置个人访问令牌
  4. 指定仓库信息:设置仓库所有者、名称、分支及存储路径
  5. 调整计划(可选):修改”定时触发器”节点设置
  6. 激活工作流:保存并启用

节点详解

  • 定时触发器:按计划启动工作流
  • 仓库文件列表:获取GitHub现有备份清单
  • 聚合:整合文件名列表便于查询
  • 获取工作流:通过API拉取n8n工作流
  • JSON转换:将工作流转为JSON文件
  • Base64编码:转换内容适配GitHub API
  • 提交信息:生成时间戳和标准文件名
  • 文件检查:判断备份是否已存在
  • 更新/上传文件:执行GitHub仓库文件操作

自定义选项

  • 修改备份存储路径
  • 自定义文件名生成规则
  • 调整提交信息模板
  • 增加错误处理机制
  • 添加工作流筛选条件
  • 变更备份频率(小时/周/特定日)

模板基于n8n v1.92.2版本创建

(0)
上一篇 5天前
下一篇 5天前

更多相关内容

从零掌握 AI + MCP/Responses API 的自动化设计,节省90%的时间和成本,成为AI自动化专家。学会 n8n、Coze、Dify 接入全球领先 AI应用生态,打造属于你的 AI智能工作流。