执行摘要
本 PR 修改了多个 GitHub Actions CI 工作流的路径过滤器,使 CI 跳过 .md 和 .txt 文件的测试,旨在优化 CI 效率,减少不必要的资源消耗,覆盖 AMD、NPU、Xeon、XPU 等多个平台。
功能与动机
动机源自 issue 21409 的修复需求,并根据 PR 21334 重新设计。PR body 明确指出:"CI will now ignore all .md and .txt files",目标是避免对文档和文本文件运行测试,提升开发流程效率,节省 CI 时间和计算资源。
实现拆解
变更涉及 6 个 CI 工作流文件,均位于 .github/workflows/ 目录下。关键改动是在每个文件的 filters 部分添加排除模式:
- 主工作流(pr-test.yml):将
"python/sglang/!(multimodal_gen)/**" 改为 "python/sglang/!(multimodal_gen)/**/!(*.md)",并类似修改 test 和 sgl-kernel 路径。
- 平台特定工作流(如 pr-test-amd.yml、pr-test-npu.yml):类似调整,针对不同硬件优化。例如,在 pr-test-npu.yml 中,multimodal_gen 路径排除了
.md 和 .ipynb 文件。
关键代码示例(来自 pr-test.yml):
main_package:
- "python/sglang/!(multimodal_gen)/**/!(*.md)"
评论区精华
review 过程简单,仅 Fridge003 批准,无实质性讨论。Issue 评论中,gemini-code-assist[bot] 无法生成总结,ping1jing2 使用 /tag-and-rerun-ci 触发 CI 重跑,表明变更被快速接受,无争议或深度技术交锋。
风险与影响
风险:路径过滤器模式错误可能导致 CI 跳过必要代码文件,降低测试覆盖。例如,如果模式语法有误,可能意外排除非 .md 文件。但变更仅针对非代码文件,风险较低。
影响:对用户无影响;对团队,减少 CI 运行时间,提高提交效率;系统层面,优化资源使用,但需监控测试覆盖是否保持不变。
关联脉络
与近期 CI 优化 PR 如 #21586 和 #21579 相关,它们共同推进 CI 流程改进。本 PR 是持续优化的一部分,旨在减少无关变更触发的测试,反映仓库在提升开发效率方面的演进趋势。
参与讨论