一个基于Runbook的版本发布系统设计思路

目前市面上的Devops系统例如Jenkins、云效这类,通常都是通过Pipeline流水线来实现某项任务,但是对于业务系统的某次版本发布来说,通常涉及多种类型的任务/同一类型的多次任务,例如配置发布、路由发布、服务发布等等,这就造成了以下一些问题:

  • 发布者必须熟悉每个流水线的作用和使用方法
  • 发布者必须正确填写流水线的参数
  • 如果有操作顺序要求,发布者还必须要确保流水线的执行顺序

因此在我们的系统中,我设计了一套基于Runbook(即版本发布操作手册)的发布系统:
解析
生成/映射
服务B任务
Build 镜像
发布配置
发布服务
服务A任务
Build 镜像
发布配置
发布服务
发布内容
发布服务A
发布服务B
Runbook
工作流执行引擎
工作流:发布服务A
工作流:发布服务B

该系统以Runbook为入口,通过结构化的Runbook,将研发线条所有人员都可以理解的发布内容,映射为一组顺序/并行性执行的流水线清单(充分利用现有的流水线能力无需重复造轮子),对于版本发布人员来说:

  • 无需再手动操作流水线
  • 只需确保Runbook内容的正确性

即可全自动的完成一次版本发布。

这样的系统在我们的实践中取得了极好的效果,不过目前源码无法开放了,只能简要的

相关推荐
Zelman4 小时前
测试过程模型与左移右移
测试·自动化运维·devops
liangshanbo12152 天前
面试题:AI 对话上下文超限怎么办?
面试·webpack·devops
海海不掉头发5 天前
软件项目管理学习笔记-从软件危机到敏捷与DevOps
笔记·学习·devops
效率工作实验室5 天前
AI Agent 管理平台如何与现有 DevOps 和 ITSM 体系集成?
ai·agent·devops·集成·管理平台
极小狐5 天前
CI 作业里 kubectl 连不上集群?用 Kubernetes Agent 打通部署链路的 7 个步骤
ci/cd·kubernetes·gitlab·devops·k8s部署
天天喝旺仔5 天前
CI/CD 实战:GitHub Actions 自动化构建、测试与发布流水线
ci/cd·自动化·github·devops·持续集成
小稀土1235 天前
内网私有化部署 DevOps 软件落地指南:8 个坑、6 个步骤,一次讲清
devops
cakeism8256 天前
金融行业 DevOps 平台推荐:2026年主流方案对比与 Gitee 选型解析
金融·gitee·devops
智能运维指南6 天前
研发效能平台建设路径:从工具堆砌到价值流驱动的效能革命
devops·研发效能度量·嘉为蓝鲸·研发效能平台
Lyy6 天前
DevOps平台 — 第十三篇:规划的设计与实现
后端·devops