我在 azure 管道中有两个管道(也称为“构建定义”),一个正在执行系统测试,一个正在执行性能测试。两者都使用相同的测试环境。我必须确保系统测试管道运行时不会触发性能管道,反之亦然。
到目前为止我已经尝试过:我可以访问 Azure DevOps REST-API 来检查构建是否正在针对特定定义运行。因此,我可以在实际管道运行之前实现执行脚本的作业。然后,该脚本仅通过每秒检查 REST-API 来检查另一个管道的构建状态,并在例如之后超时。 1小时。
但是,这对我来说似乎很老套。有没有更好的方法来阻止另一个构建管道正在运行?
最佳答案
如果您的项目是私有(private)的,Microsoft 托管的 CI/CD 并行作业限制是一个免费并行作业,每次最多可以运行 60 分钟,直到您每月使用 1,800 分钟(30 小时)为止。
自托管 CI/CD 并行作业限制是一项自托管并行作业。此外,对于您组织中的每个活跃 Visual Studio Enterprise 订阅者,您都会获得一项额外的自托管并行作业。
目前还没有这样的设置来控制不同代理池的并行作业限制。但是社区上有一个类似的问题,并且已经标记了答案。我建议您可以检查一下答案是否对您有帮助。 Here是链接。
关于Azure管道: How to block pipeline A if pipeline B is running,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58732853/