如何实现dotnet build失败时使Bamboo脚本步骤同步标记为失败?
解决Bamboo脚本步骤中dotnet build失败不标记为失败的问题
核心解决方案:捕获dotnet命令的退出码并终止脚本
PowerShell默认不会因为外部命令(如dotnet build)执行失败就终止脚本,导致Bamboo误判整个步骤执行成功。要让Bamboo正确识别构建失败,只需在脚本中手动检查dotnet build的退出码,并在失败时返回非0退出码:
- 在PowerShell脚本中,执行
dotnet build后添加退出码检查逻辑:# 替换为你的项目路径和构建配置 dotnet build ./YourSolution.sln -c Release # 非0退出码表示构建失败,终止脚本并返回该码 if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE } - 确认Bamboo脚本步骤配置:**不要勾选"忽略退出代码"**选项,确保Bamboo会根据脚本最终退出码判断步骤是否失败。
扩展:测试环节的统一处理
如果需要在脚本中执行测试(替代MSTestRunner步骤),可以用dotnet test命令,同样通过捕获退出码让Bamboo识别失败:
dotnet test ./YourTestProject.csproj -c Release if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
内容的提问来源于stack exchange,提问作者user3265613
相关产品推荐
相关产品推荐

