免费工具
GitHub Actions 可视化工具
粘贴工作流文件,即可在工作流运行之前得到可编辑的 GitHub Actions 工作流图,查看其触发器、作业、needs 依赖、矩阵规模、环境和服务容器。试用无需账号。
示例输出
使用方法
粘贴工作流文件
.github/workflows 中的任意 YAML 文件,例如 ci.yml 或 deploy.yml。要对比多个工作流,可以用一行 --- 隔开后一起粘贴。
查看流水线
流程从触发器卡片开始,作业按 needs 决定的顺序从左到右排列,每个作业都会连接到它部署到的环境和它使用的服务容器。
在 Archboard 中打开
保存为新图表后,可以重新排列作业、添加备注、分享链接,或导出为 SVG 和 PNG。注册只需 Google 或 GitHub 账号。
从工作流文件中绘制哪些内容
以下工作流键决定图表的结构:
on每个工作流一张触发器卡片,显示前两个事件和其余事件的数量,例如 push · pull_request +1,并连接到最先开始的每个作业。workflow_call 和 workflow_run 各有自己的卡片。
jobs每个作业绘制为一张带名称的卡片;名称中含有表达式时使用作业 ID。步骤只计数不绘制,带 if 条件的作业的入线为虚线。
needs从 needs 中列出的每个作业连线到等待它的作业,让你看清一次运行的执行顺序。未知的作业 ID 和循环依赖会显示为警告。
strategy.matrix矩阵作业保持为一张卡片,并标出它生成的作业数量,例如 ×6;数量按 GitHub 的展开方式计算,并应用 include 和 exclude。由表达式构建的矩阵显示为 ×?。
environment每个部署环境(例如 staging 或 production)各自绘制为一张卡片,并从部署到该环境的作业连线过去。
services服务容器绘制为挂在其作业上的卡片:postgres、redis 和 mongo 镜像会显示为对应的数据库卡片,其他镜像显示为容器卡片。
uses使用可复用工作流的作业是一张显示其名称或工作流路径的卡片,和其他作业一样通过 needs 连接。
工作流图表不包含什么
- 单个步骤、其 run 脚本以及用到的 action:步骤只计数。
- 运行结果:某次运行是否通过、作业耗时以及日志。图表显示的是工作流文件本身的内容。
- 可复用工作流内部的作业,无论它位于同一个仓库还是其他仓库:不会获取其文件,因此它保持为一张卡片。
- if 条件和表达式的结果:即使条件会跳过某个作业,该作业也会被绘制;env、secrets 和 with 输入不会被读取。
GitHub Actions 可视化工具常见问题
可以同时可视化多个工作流吗?
可以。把多个工作流文件依次粘贴,中间用一行 --- 隔开。每个工作流都会绘制在自己的框架中,并带有自己的触发器卡片;workflow_run 触发器会显示它所等待的工作流名称。
矩阵作业如何显示?
显示为一张带 ×N 的卡片,N 是应用 exclude 和 include 之后矩阵生成的作业数量,最多计到 GitHub 的上限 256。如果矩阵来自 fromJSON 这类表达式,运行前无法得知数量,因此卡片显示 ×?。
支持可复用工作流吗?
支持。在作业级别带有 uses 的作业会变成一张可复用工作流卡片,并和其他作业一样通过 needs 连接。它内部的作业不会展开,因为它们在另一个文件中。如需绘制,请单独粘贴该工作流:其 workflow_call 触发器也会有自己的卡片。
在 Archboard 中打开图表后会怎样?
本页面上的预览不会被保存。选择“在 Archboard 中打开”后,你看到的图表(触发器、作业、环境和连线)会保存为工作区中的新图表,你可以重新排列、添加注释、分享或导出。它只是一个起点:之后对工作流文件的修改不会更新该图表。
GitHub Actions 可视化工具免费吗?
免费。粘贴工作流和查看图表都无需账号。在 Archboard 中打开需要一个免费账号。