2017-10-08 51 views
0

travis_wait [minutes]允許在沒有輸出到特拉維斯CI的指定參數之後增加超時。但是,如果輸出結果超過了我通過添加&> /tmp/somefile || tail -n 10000 /tmp/somefile而克服的4MB限制,那麼會在失敗後顯示完整日誌,例如,如何避免在travis_wait之後顯示日誌?

$ travis_wait 30 bash -c 'mvn install -DskipTests=true -Dmaven.javadoc.skip=true --batch-mode --show-version &> /tmp/tomee-build.log || tail -n 10000 /tmp/tomee-build.log' 

Still running (20 of 30): bash -c mvn install -DskipTests=true -Dmaven.javadoc.skip=true --batch-mode --show-version &> /tmp/tomee-build.log || tail -n 10000 /tmp/tomee-build.log 

The command bash -c mvn install -DskipTests=true -Dmaven.javadoc.skip=true --batch-mode --show-version &> /tmp/tomee-build.log || tail -n 10000 /tmp/tomee-build.log exited with 1. 

Log: 

Picked up _JAVA_OPTIONS: -Xmx2048m -Xms512m 

[INFO] Scanning for projects... 

這顯然是構建日誌,而不是由tail最後打印的10000行的開始(見https://travis-ci.org/krichter722/tomee/jobs/285211820瞭解詳細信息)。

回答

2

我不知道travis_wait這裏的行爲,我可以建議的一件事是使用調整自己的替代品travis_wait,在那裏你可以控制在什麼情況下如何處理輸出。我正在使用一個到eliminate the dots from the log

除此之外,你可以因爲這兩個輸出和錯誤將被重定向到一個文件`&>`挖入travis_waitimplementation

+0

AFAIK日誌的顯示(與原來的實現)是不可能發生的。難道說參數的傳遞是錯誤的,重定向和'|| tail -n'被解釋爲計算「travis_wait」?否則,我不知道爲什麼Travis網站上顯示了100000行。 –

+0

可能。我不明白你爲什麼看到目前的行爲。調試imo也有點困難。你可以在wait命令前面設置+ x''',讓bash shell精確地打印正在執行的內容。除此之外,使用我猜想的解決方法? – renemilk