From 1aedba7d6faeca2dc333625e140e41545ceeb4b7 Mon Sep 17 00:00:00 2001 From: Nicolas Williams Date: Wed, 2 Jan 2019 20:36:10 -0600 Subject: [PATCH] Travis: cat failure logs, show core backtraces (fix #499) --- .travis.yml | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index 37117da47..c0789030e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,7 +11,7 @@ env: before_install: - if [ $TRAVIS_OS_NAME = linux ]; then sudo apt-get update -qq; fi - if [ $TRAVIS_OS_NAME = linux ]; then sudo apt-get install -qq bison comerr-dev flex libcap-ng-dev libdb-dev libedit-dev libjson-perl libldap2-dev libncurses5-dev libperl4-corelibs-perl libsqlite3-dev libkeyutils-dev pkg-config python ss-dev texinfo unzip netbase keyutils; fi - - if [ $TRAVIS_OS_NAME = linux ]; then sudo apt-get install -qq ldap-utils; fi + - if [ $TRAVIS_OS_NAME = linux ]; then sudo apt-get install -qq ldap-utils gdb; fi - if [ $TRAVIS_OS_NAME = osx ]; then brew update; fi - if [ $TRAVIS_OS_NAME = osx ]; then brew install cpanm bison flex berkeley-db lmdb openldap openssl; fi - if [ $TRAVIS_OS_NAME = osx ]; then sudo cpanm install JSON; fi @@ -39,14 +39,20 @@ install: else ../configure --enable-maintainer-mode $COVERAGE fi - - make -j3 + - ulimit -c unlimited; make -j3 script: - - if [ x${COVERITY_SCAN_BRANCH} != x1 ]; then make check; fi + - if [ x${COVERITY_SCAN_BRANCH} != x1 ]; then ulimit -c unlimited; make check; fi after_script: - if [ -n "$COVERAGE" ]; then coveralls --gcov-options '\-lp'; fi +after_failure: + - cat config.log + - find . -name "*.trs" -print0| xargs -0 grep -l '^:test-result: FAIL' | while read trs ; do echo FAILURE detected at $trs; cat ${trs%%.trs}.log ; done + - if [ $TRAVIS_OS_NAME = linux ]; then echo "thread apply all bt" > x; find . -name core -print0 | xargs -0 gdb -batch -x x `file core|sed -e "s/^[^']*'//" -e "s/[ '].*$//"` core; fi + - if [ $TRAVIS_OS_NAME = linux ]; then echo "thread apply all bt" > x; find . -name core.\* -print | while read gdb; do gdb -batch -x x `file "$core"|sed -e "s/^[^']*'//" -e "s/[ '].*$//"` "$core"; fi + compiler: - clang - gcc