Jak*_*ake 6 powershell continuous-integration bamboo windows-server-2008-r2
我有一些简单的PowerShell脚本,我使用Bamboo制作成可执行文件,通过添加路径,例如C:\build-scripts\bamboo-build-scripts\clear-directory.ps1Bamboo中新容量的可执行文件的路径.
但是,一些脚本,即使是在构建过程中作为"脚本"进程正确执行的脚本,在以这种方式运行时,通过给出返回码-1会失败.以下是构建日志中的示例:
simple 18-Jun-2015 13:14:06 Failing task since return code of [C:\build-scripts\bamboo-build-scripts\update-checker.ps1 GeometryClassLibrary] was -1 while expected 0
Run Code Online (Sandbox Code Playgroud)
多个PowerShell脚本会发生这种情况,并导致构建过程的其余部分失败.
这是一个示例PowerShell脚本,我通过将参数传递给目录来执行:
Remove-Item $args[0] -Force -Recurse
[io.directory]::CreateDirectory($args[0])
Run Code Online (Sandbox Code Playgroud)
是否需要添加到PowerShell脚本以使其以正确的代码退出?或者我没有在Bamboo中正确定义可执行文件?
您可以尝试以下几件事:
脚本可能根本没有执行,可能是因为策略设置为不执行它们。尝试powershell.exe直接调用:
powershell.exe -ExecutionPolicy Bypass -File C:\build-scripts\bamboo-build-scripts\clear-directory.ps1
Run Code Online (Sandbox Code Playgroud)
由于退出代码问题,NSClient++ 过去常常在调用用 powershell 编写的检查时出现问题。他们的解决方案如下所示:
cmd /c echo C:\build-scripts\bamboo-build-scripts\clear-directory.ps1; exit $LastExitCode | powershell.exe -Command -
Run Code Online (Sandbox Code Playgroud)
也许这会给出更准确的代码。
| 归档时间: |
|
| 查看次数: |
1620 次 |
| 最近记录: |