什么是流水线?
在 Auto Engine 中,流水线可以理解成“把一件复杂事情拆成若干步骤后,交给系统按顺序或条件自动执行”的完整脚本。它把业务流程、所需工具以及触发条件封装在一起,让重复任务拥有可视、可追踪、可复用的执行方式。
核心特性
- 结构化:流水线由多个 stage(阶段)构成,每个 stage 再由多个 node(节点)组成,节点负责执行最小粒度的动作。
- 可控性:通过条件判断、变量和上下文数据,节点之间可以形成接近 DAG(有向无环图)的执行路径,灵活描述串行、并行或分支流程。
- 可复用:同一套配置可以被不同触发源使用;复制或引用流水线即可快速搭建新场景。
- 可观测:每个 stage、node 的输入输出都可记录,便于排查错误与审计执行记录。
流水线包含哪些部分?
Stage(阶段)
阶段是对“流程里一组相关步骤”的抽象。它决定节点的执行顺序,通常按照业务逻辑从上到下排列,例如「准备环境 → 拉取数据 → 生成内容 → 发布」。
Node(节点)
节点是阶段内最小的执行单元,可以是一个脚本、一段代码或一次外部调用。节点会消费输入参数、执行任务并产出结果供下游节点继续使用。
条件与变量
流水线允许在 node 之间配置条件判断,如“只有当代码审批通过才执行部署阶段”。同时可以使用“运行时上下文”,让同一条流水线适配不同环境。
流水线如何运行?
- 接收触发:系统监听用户指令后,读取对应流水线的配置。
- 阶段推进:每个 stage 按顺序执行;每个stage中的节点都是并行的。
- 条件判断:运行过程中会根据节点返回值、变量决定走向,例如跳过某个阶段。
- 结果回传:流水线结束后会生成日志、产物和状态,便于后续审计或再次触发。
为什么需要流水线?
- 降低人工成本:把频繁、易错的操作交给系统自动处理。
- 确保一致性:流程固定、步骤透明,避免因为人不同导致操作差异。
- 快速试错与复现: 任何一次执行都有记录,可以快速复用或回放,提升迭代效率。
- 适配多场景:多条流水线可以组合成流水线集合(Pipeline Group),针对不同业务并行运行,互不干扰。
使用建议
- 先用白板或流程图梳理阶段与节点,再落地为流水线配置。
- 尽量把节点的输入输出标准化,避免隐藏依赖。
- 对关键阶段增加条件校验与通知,保障出现异常时能及时介入。
- 定期回顾执行日志,删除冗余阶段或拆分过长的流水线,保持配置清晰易维护。
最后更新于: