Force Octopus部署步骤失败,如果PostDeploy Powershell脚本失败
问题描述:
在我的八达通部署步骤之一中,我有一个名为PostDeploy.ps1
的PowerShell脚本运行正常,但是如果遇到异常,部署将继续,就像它成功。Force Octopus部署步骤失败,如果PostDeploy Powershell脚本失败
我见过有关PowerShell退出代码问题的几篇文章,但我找不到PostDeploy脚本特定问题的解决方案。
如果PostDeploy遇到错误,如何强制将某个步骤标记为失败?
答
您应该能够以$LastExitCode
非零和Exit 1
的组合失败。
夫妇用Google搜索了链接:
- http://help.octopusdeploy.com/discussions/problems/7604-deploy-wont-fail-when-powershell-script-fails
- http://help.octopusdeploy.com/discussions/questions/4539-need-to-mark-a-step-as-failed
- http://help.octopusdeploy.com/discussions/problems/18419-octopus-powershell-step-doesnt-display-error
附:我相信你知道,但只是提醒一下,Octopus的发行版是快照变量,脚本,包等的版本。因此需要创建一个新版本和/或包。
我已经将Alex M的答案标记为正确,因为它解决了我的问题,但问题的实际原因是PowerShell以难以忘怀的方式运行Windows可执行文件。为了解决失败,我必须添加'| Out-Host',然后在'$ LastExitCode -ne 0'上做if检查 – Savage