diff --git a/.travis.yml b/.travis.yml index 96efe8e7..0035abc4 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,3 +1,4 @@ +sudo: false language: cpp env: @@ -11,7 +12,7 @@ env: - LCOV_ROOT=$HOME/lcov - VALGRIND_ROOT=$HOME/valgrind-install - BOOST_ROOT=$HOME/boost_1_61_0 - - BOOST_URL='http://downloads.sourceforge.net/project/boost/boost/1.61.0/boost_1_61_0.tar.gz?use_mirror=netix' + - BOOST_URL='http://sourceforge.net/projects/boost/files/boost/1.61.0/boost_1_61_0.tar.gz' packages: &gcc5_pkgs - gcc-5 - g++-5 @@ -30,7 +31,7 @@ packages: &gcc5_pkgs matrix: include: - # GCC/Coverage/Autobahn + # GCC/Coverage/Autobahn (if master or develop branch) - compiler: gcc env: - GCC_VER=5 @@ -77,7 +78,7 @@ before_install: - scripts/install-dependencies.sh script: - - scripts/build-and-test.sh + - travis_retry scripts/build-and-test.sh after_script: - cat nohup.out || echo "nohup.out already deleted" diff --git a/scripts/build-and-test.sh b/scripts/build-and-test.sh index 3c8ed47e..e62e93aa 100755 --- a/scripts/build-and-test.sh +++ b/scripts/build-and-test.sh @@ -40,6 +40,9 @@ elif [[ $(uname -s) == "Linux" ]]; then if ((${num_proc_units} < ${num_jobs})); then num_jobs=$num_proc_units fi + if [[ "${TRAVIS}" == "true" && ${NUM_PROCESSORS:=2} > ${num_jobs} ]]; then + num_jobs=$NUM_PROCESSORS + fi fi echo "using toolset: $CC" @@ -99,10 +102,10 @@ function run_autobahn_test_suite { # We need to wait a while so wstest can connect! sleep 5 + # Show the output (if any) as it is generated + tail -f nohup.out & cd scripts && wstest -m fuzzingclient cd .. - # Show the output - cat nohup.out rm nohup.out # Show what jobs are running jobs @@ -110,6 +113,7 @@ function run_autobahn_test_suite { sleep 5 # Kill it gracefully kill -INT %1 + kill -INT %2 # Wait for all the jobs to finish wait # Parse the test results, with python>=2.5<3 script @@ -135,9 +139,10 @@ if [[ $VARIANT == "coverage" ]]; then # Perform test if [[ $MAIN_BRANCH == "1" ]]; then run_tests_with_valgrind - run_autobahn_test_suite + # skip slow autobahn tests + #run_autobahn_test_suite else - echo "skipping autobahn tests for feature branch build" + echo "skipping autobahn/valgrind tests for feature branch build" run_tests fi