diff --git a/.travis.yml b/.travis.yml index ee42e1b..463513b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,6 +6,7 @@ sudo: true compiler: - clang + - gcc branches: only: @@ -21,14 +22,10 @@ env: before_script: - sudo modprobe fuse - - mkdir build - - cd build - cmake --version - - cmake .. - script: - - if [ "${COVERITY_SCAN_BRANCH}" != 1 ]; then make && make check ; fi + - if [ "${COVERITY_SCAN_BRANCH}" != 1 ]; then ./build.sh && ./test.sh && make check -C build ; fi addons: coverity_scan: diff --git a/build.sh b/build.sh index f5cf5cb..04604d7 100755 --- a/build.sh +++ b/build.sh @@ -1,15 +1,15 @@ -#!/bin/bash +#!/bin/bash -eu -set -eu +# Make sure we are in the directory this script is in. +cd "$(dirname "$0")" -if [ ! -d build ] +if [[ ! -d build ]] then mkdir build cd build cmake .. -else - cd build + cd .. fi -make +make -j2 -C build diff --git a/test.sh b/test.sh index 6609005..d9704e6 100755 --- a/test.sh +++ b/test.sh @@ -1,10 +1,16 @@ #!/bin/bash -eu -./build/checkops &> /dev/null +# Make sure we are in the directory this script is in. +cd "$(dirname "$0")" +# Failed tests can leave dangling mounts behind. for i in $(mount | grep -e "/tmp/encfs-reverse-tests-\|/tmp/encfs-tests-" | cut -f3 -d" "); do echo "Warning: unmounting leftover filesystem: $i" - fusermount -u $i + fusermount -u $i || true done +# This is very noisy so run it silently at first. Run it again with +# output if the first run fails. +./build/checkops &> /dev/null || ./build/checkops + perl -MTest::Harness -e '$$Test::Harness::debug=1; runtests @ARGV;' tests/*.t.pl