发布与同步#

release.yaml — 构建并发布 wheel 包#

触发条件: 推送匹配 v[0-9]+.[0-9]+.[0-9]+ 格式的标签(仅稳定版发布; dev、rc 等预发布标签不会匹配该规则)。

  • build-wheelsmanylinux_2_28_x86_64 容器内构建 Python wheel 包, 并作为工作流构件(artifact)上传。
  • publish 下载该构件,并使用 Trusted Publishing 机制 (通过 id-token: write 实现 OIDC 认证,无需存储 PyPI token)将其发布到 PyPI。

标签命名规则决定了哪些标签会触发该工作流,详见版本管理; 构建细节请参阅打包

hugo-site.yaml — 构建并发布文档站点#

触发条件: 推送到 gh-pages 分支;coverage 工作流执行完成后触发 (workflow_run);此外也可通过 workflow_call 被调用(当一个带有 documentation 标签的 PR 被合并时,由 unittest.yaml 中的 build-doc 作业触发),以及手动触发(workflow_dispatch)。

docs/ 目录构建 Hugo 站点并发布到 GitHub Pages。concurrency 配置为串行化部署(cancel-in-progress: false),避免多次发布相互抢占、 产生竞态。

sync-docs.yaml — 将文档分支 rebase 到 master#

触发条件: 仅支持 workflow_call(由 unittest.yaml 调用)。

gh-pages 分支 rebase 到最新的 master 分支并强制推送,使文档内容 与代码变更保持同步,而不必等待完整的站点重新构建。

auto-sync.yaml — 镜像同步到其他远端#

触发条件: 推送到 master 分支;此外支持手动触发 (workflow_dispatch)。

使用共享的可复用工作流 (flagos-ai/build-infra/.github/workflows/sync-to-remote.yaml),将仓库 镜像同步到 gitcode.comcode.gitlink.org.cn,确保项目在国内 Git 托管平台上同样保持可用。

其他运维类工作流#

  • probe-node.yaml —— 手动触发(workflow_dispatch),用于检查某个 自托管 runner(例如 h100a100)是否在线且状态正常。
  • random-test.yaml —— 手动触发(workflow_dispatch),可在指定 runner 上针对任意选定的算子和 GPU 组合运行测试,用于临时排查问题。
  • review-stats.yaml —— 手动触发(workflow_dispatch),用于生成 指定日期范围内的 PR 评审统计数据。