[英]Diff command failing when executed from jenkins shell script
我執行的 diff 命令很簡單,但是當從 jenkins 的 execute shell 腳本給出時失敗。
echo 'diff Delta_changes_current.txt Delta_changes_previous.txt >> PR.DELTA.FILES'
chmod 777 delta.sh
. ./delta.sh
diff Delta_changes_current.txt Delta_changes_previous.txt
構建步驟“執行 shell”將構建標記為失敗
甚至沒有錯誤可以找出問題所在。
當我直接從服務器運行相同的命令時,命令給出了結果。
有人可以幫我找到需要做的事情嗎
..
上面的片段來自日志。 讓我只通過運行命令來粘貼日志..
+ diff Delta_changes_current.txt Delta_changes_previous.txt
1,4c1
< ################################# Delta_Changes_currect file for Junit##########
<
< /OptionlessVDDSController.java
< /OptionlessVDDSControllerTest_.java
\ No newline at end of file
---
> /OracleBroker.java
Build step 'Execute shell' marked build as failure
它的打印輸出並立即失敗
根據差異手冊頁:
_ 輸入相同時退出狀態為 0,不同時為 1,故障時為 2。_
如果文件不同, diff
將退出狀態設置為 1。Jenkins 將執行步驟視為失敗,如果它返回的退出狀態不同於 0。
您可以再添加一個命令來捕獲這種情況:
(( $? < 2 )) && true # Convert status 1 to 0
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.