travis_wait [minutes]
允许在 Travis CI 上的指定参数没有生成输出后增加超时。然而,结合超过 4MB 限制的输出,我通过添加 &> /tmp/somefile || tail -n 10000 /tmp/somefile
克服了这一限制。失败后显示完整日志,例如
$ 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/398814959)。
使用 python script.py &> /tmp/build.log || (tail -n 100 /tmp/build.log && exit 1)
进行最少的设置即可正常工作(其中 script.py
在新行中打印从 0 到 1000000 的数字,并以代码 1 退出以模拟构建失败)(有关详细信息,请参阅 https://travis-ci.org/krichter722/travis-log-exceeded/builds/400489069)。
最佳答案
在不理解这里的 travis_wait
行为的情况下,我可以建议的一件事是使用调整您自己的 travis_wait
替代品,您可以控制如何处理输出情况。我正在使用一个 eliminate the dots from the log 。
除此之外,您还可以深入研究 travis_wait
implementation
关于timeout - 如何避免travis_wait之后显示日志?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46636196/