如何使jenkins在失败的Windows Batch命令中失败?
我在jenkins中使用了一些Windows批处理命令,其中每个命令都可能失败。为了使詹金斯工作在每个步骤上失败,这些批处理命令如下所示:
net use m: \\%IP_ADDRESS%\Whatever %PASSWORD% /user:%USERNAME%if ERRORLEVEL 1 exit 1
mkdir m:\Install
if ERRORLEVEL 1 exit 1
copy /b %LOCAL_TEMP%\%INSTALLER_EXE% m:\Install\%INSTALLER_EXE%
if ERRORLEVEL 1 exit 1
net use m: /D
if ERRORLEVEL 1 exit 1
换句话说:我似乎要检查每个批处理命令是否失败,然后在必要时以错误代码1退出。有没有更有意义/更方便/更好的方法来实现这一目标?
如果我不检查每个步骤并退出,jenkins将执行以下批处理命令。
回答:
可悲的是,您不能激活-e
in
bash之类的标志,该标志会在任何不为0的返回码上退出。但是,您可以使用逻辑or
跳转到退出标签,如下所示:
例如,创建此.cmd文件:
@echo offecho Starting very complicated batch file...
ping -invalid-arg || goto :error
echo OH noes, this shouldn't have succeeded.
goto :EOF
:error
echo Failed with error #%errorlevel%.
exit /b %errorlevel%
以上是 如何使jenkins在失败的Windows Batch命令中失败? 的全部内容, 来源链接: utcz.com/qa/400798.html