评估 GitHub Actions

2019年11月14日 · Pietro Albini 代表 基础设施团队

Rust 基础设施团队很高兴地宣布,我们正在开始评估 GitHub Actions 作为 rust-lang/rust 仓库的 CI 提供商,以取代 Azure Pipelines。

自 GitHub Actions 测试版发布以来,我们一直参与其中,密切关注其开发进展并在我们组织的许多较小仓库中进行测试,目前我们对这款产品非常满意。GitHub Actions 提供了我们喜欢 Azure Pipelines 的大多数功能,同时与 GitHub 的 UI、权限和工作流程集成在一起。

GitHub 还提出赞助一个专用构建池,提供更多资源。我们广泛但耗时的 CI 是编译器贡献者的主要痛点之一,而这些额外资源有可能显著改善开发者的体验。在初步测试中,由于专用构建池增加了核心数量,我们实现了构建速度提升 60%,并且仍有很大的并行空间,可以更快地完成构建。

我们的计划是在未来几周内开始与 Azure Pipelines 并行运行 GitHub Actions,随着我们了解更多信息,我们将随时向社区通报最新情况。


[更新] 社区中的一些成员问为什么我们在迁移到 Azure Pipelines 不久后又考虑转离它。我们想重申,我们对 Pipelines 作为产品很满意,但 Microsoft 和 GitHub 都要求我们尝试 GitHub Actions,因为它与我们已经在使用的 GitHub 工作流程集成得更紧密。在其他仓库使用一段时间后,我们非常满意,足以开始评估 rustc CI 的迁移。