[英]How to skip gpg signing for Java Maven project in Travis-CI
[英]How to increase timeout in travis-ci for my selenium tests written on java?
我有一個關於java的測試wrintten(在本地機器上傳遞,測試運行大約30分鍾)我需要增加travis-ci的超時,我可以通過改變.tavis.yml來改變超時嗎? 這是我的.tavis.yml文件:
language: java
cache: apt
before_install:
- sudo apt-get update -qq
- sudo apt-get install -qq default-jdk maven
env:
- JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd64
script:
- travis_wait mvn package -Dtestng=test.xml
我問,因為我在travis上有錯誤:
Timeout (20 minutes) reached. Terminating "mvn package -Dtestng=test.xml"
那么,我有什么選擇來改變時間嗎? 也許我需要寫下一些東西給.tavis.yml? 謝謝。
您可以通過修改腳本命令來增加超時。 例如,將超時時間增加到半小時:
- travis_wait 30 mvn package -Dtestng=test.xml
請參閱Mor的答案,了解一個很好的替代方案,它不會將構建輸出“掛起”30分鍾。
看起來你的測試沒有產生任何輸出,這通常會在10分鍾內導致超時。
但是,由於您使用travis_wait
為build命令添加前綴,因此該超時將增加到20分鍾。
我們的構建系統中的shell環境提供了一個有助於解決此問題的功能,至少超過10分鍾。
travis_wait每分鍾在構建日志中寫一條短線,持續20分鍾,從而延長了命令完成的時間。
仔細檢查您的測試是否懸空。
我發現以下解決方案取自對我有用的GitHub問題 :
script:
- .travis/test.sh
test.sh
看起來像這樣:
# send the long living command to background
./long-running-operation.sh &
# Constants
RED='\033[0;31m'
minutes=0
limit=3
while kill -0 $! >/dev/null 2>&1; do
echo -n -e " \b" # never leave evidences!
if [ $minutes == $limit ]; then
echo -e "\n"
echo -e "${RED}Test has reached a ${minutes} minutes timeout limit"
exit 1
fi
minutes=$((minutes+1))
sleep 60
done
exit 0
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.