2015-05-03 56 views
0

我有一個Jenkins構建需要從我的Visual Studio Online Git SC獲取純HTML項目。它所做的只是獲取更改並使用Robocopy將文件複製到IIS文件夾。詹金斯建立失敗 - 但沒有錯誤?

由於某種原因,其他所有構建似乎最終標記爲「失敗」。即使文件已成功複製到IIS,並且除「完成:失敗」外沒有錯誤報告。

如果我立即再次運行它,它會做同樣的事情,除非成功。

我怎樣才能確定爲什麼成功的構建被記錄爲失敗?

Build step 'Execute Windows batch command' marked build as failure 
Finished: FAILURE 

截圖: https://www.dropbox.com/s/2gyo81afp5jozpx/Jenkins.PNG?dl=0

這是批處理文件

@ECHO Deploying Changes to Environment 

robocopy "C:\Program Files (x86)\Jenkins\jobs\Personal Website - Dev\workspace\Source" "C:\inetpub\wwwroot\Personal Website\DEV" /MIR 

@ECHO Deployment Completed 

回答

1

因爲執行批處理文件返回值1(用命令exit 1)的生成失敗的內容。沒有批次的內容很難告訴更多的信息,但它給你一個提示來調查這個問題。你確定你沒有exit 1你的工作批次中的某個地方嗎?

爲了確保作業結束狀態是成功的,整個腳本必須返回0

+0

謝謝,我用批處理文件內容更新了問題。將看看返回一個值。乾杯:) –

0

考慮使用一個稍微詳細的編譯系統就像MSBUILD,特別是如果使用Visual Studio。 MSBuild將允許您獲得更詳細的信息。

考慮在整個地方設置狀態變量,然後在批處理結束時回顯它們。

set Progress1 =「嘿,我得到了這部分沒有錯誤的構建。」 set Progress1Dest =「c:\ foo \ bar \ file_that_got_copied」

如果沒有更詳細的構建腳本,將無法解決這些困難的錯誤。