![](/img/trans.png)
[英]Jenkins job is marked as Failed, even though there are no errors in bat file execution
[英]JENKINS job is failed even if ROBOCOPY command successfully executed in a BAT script
我正在通過詹金斯執行Windows蝙蝠腳本。 批處理文件正在提供所需的輸出,但是構建失敗。我的批處理文件是..
cd /d D:\\Bank\\Member\\ID
if %errorlevel% neq 0 exit /b %errorlevel%
mkdir OTP
if %errorlevel% neq 0 exit /b %errorlevel%
robocopy C:\Corporate D:\\Bank\\Member\\ID\ /E /XF *.bat
if %errorlevel% neq 1 exit /b %errorlevel%
cd /d D:\\Bank\\Staff\\ID
成功復制文件后,機器人將給出退出代碼1。
但是,牛仔褲無法正常工作並出現以下錯誤:
Build step 'Execute Windows batch command' marked build as failure
Finished: FAILURE
如果robocopy
退出代碼1,我希望構建成功。
如此處所述 ,要檢查的第一個條件是用於運行Jenkins的帳戶。 鍵入services.msc
以打開Windows服務並查找Jenkins服務。
不用“本地服務帳戶”,而是使用您自己的帳戶:這樣可以避免出現任何權利問題。
但是:其他標准是顯示錯誤代碼。
如此處所述 :
所有不超過3的退出代碼都可以。
因此,在robocopy
之后,您可以添加:
@echo robocopy exit code: %ERRORLEVEL%
@if %ERRORLEVEL% GTR 3 ( echo robocopy ERROR )
@if %ERRORLEVEL% GTR 3 ( exit %ERRORLEVEL% )
@set ERRORLEVEL=0
REM at the end:
exit /b 0
即使robocopy的原始錯誤級別為1,這也可以確保Jenkins不會使批處理步驟失敗。
請使用以下方式避免:
bat "robocopy /s source dest & EXIT /B 0"
即使robocopy返回非零錯誤級別,以上內容仍將繼續jenkins構建。 即使成功復制后,Robocopy也不會由於各種原因返回0,因為它比較了兩個文件夾。 請查詢返回碼以了解更多詳細信息
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.