我们的 TeamCity 项目包含用于触发构建和提交单元测试、夜间功能测试和手动部署的组件。目前,即使功能测试失败,也可以运行部署作业。为了防止这种情况,我想启用一个先决条件,即如果夜间功能测试失败,部署将无法运行或将失败。
我不确定这是否应该通过构建步骤或依赖项来完成。不涉及实际的快照或工件依赖项,只是工作状态。
我们的 TeamCity 项目包含用于触发构建和提交单元测试、夜间功能测试和手动部署的组件。目前,即使功能测试失败,也可以运行部署作业。为了防止这种情况,我想启用一个先决条件,即如果夜间功能测试失败,部署将无法运行或将失败。
我不确定这是否应该通过构建步骤或依赖项来完成。不涉及实际的快照或工件依赖项,只是工作状态。
我在使用 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
}