How can I install something on Travis CI without a timeout?
I am trying to test a package build on travis-ci.org, but am coming up against a timeout with pip install scipy:
Installing collected packages: scipy
Running setup.py install for scipy
Running command /home/travis/virtualenv/python2.6.9/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip-build-Fn2gmJ/scipy/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-hWDx9L-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/travis/virtualenv/python2.6.9/include/site/python2.6
No output has been received in the last 10 minutes, this potentially indicates a stalled build or something wrong with the build itself.
The build has been terminated
(extract from a recent build log).
How can I build scipy >= 0.11 on Travis without a timeout?
The solution is straightforward. Just prefix the installation command with travis_wait. More details are available at https://docs.travis-ci.com/user/common-build-problems.
The default timeout per command on Travis is 10 minutes and when you use the function travis_wait only, the timeout is 20 minutes. If your build need wait more than 20 minutes, you can pass a number of minutes to function travis_wait, exemple:
$ travis_wait 30 pip install scipy
This is a function undocumented in Travis, but it is suggested by Hiro Asari from Travis on github issue.