我们的TeamCity项目包含用于提交,夜间功能测试和手动部署的触发构建和单元测试的组件。目前,即使功能测试失败,也可以运行部署作业。为了防止出现这种情况,我想启用一个前提条件,即如果夜间功能测试失败,部署将无法运行或将失败。
我不确定是否应该使用构建步骤或依赖项来完成此操作。没有涉及实际的快照或工件依赖关系,只是一个工作状态。
答案 0 :(得分:0)
我在使用TeamCity REST API和访客身份验证的Powershell构建步骤中找到了一种方法。
$url = "nytc:7070/guestAuth/app/rest/buildTypes/id:CharlesRiver_MainFunctionalTest/builds/canceled:false/status"
if ($url -ne "SUCCESS")
{
"Can't run deploy if tests have failed."
"##teamcity[buildStatus status='FAILURE' text='Deploy cannot run because function tests have failed']"
exit 1
}