]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
CI: cirrus-ci: display gdb bt if any
authorIlya Shipitsin <chipitsine@gmail.com>
Fri, 8 Sep 2023 20:57:10 +0000 (22:57 +0200)
committerWilly Tarreau <w@1wt.eu>
Fri, 22 Sep 2023 06:28:30 +0000 (08:28 +0200)
previously, if test process crashes (either BUG_ON or segfault), no
coredump were collected and analysed

.cirrus.yml

index 2993b943a25e2c19eddfd52770dcb617c3f53eed..4bf3fb6726ad65f0907ccc9dd7aa85a85ffd0d64 100644 (file)
@@ -6,8 +6,13 @@ FreeBSD_task:
   install_script:
     - pkg update -f && pkg upgrade -y && pkg install -y openssl git gmake lua53 socat pcre
   script:
+    - sudo sysctl kern.corefile=/tmp/%N.%P.core
+    - sudo sysctl kern.sugid_coredump=1
     - scripts/build-vtest.sh
     - gmake CC=clang V=1 ERR=1 TARGET=freebsd USE_ZLIB=1 USE_PCRE=1 USE_OPENSSL=1 USE_LUA=1 LUA_INC=/usr/local/include/lua53 LUA_LIB=/usr/local/lib LUA_LIB_NAME=lua-5.3
     - ./haproxy -vv
     - ldd haproxy
-    - env VTEST_PROGRAM=../vtest/vtest gmake reg-tests REGTESTS_TYPES=default,bug,devel || (for folder in /tmp/*regtest*/vtc.*; do cat $folder/INFO $folder/LOG; done && exit 1)
+  test_script:
+    - env VTEST_PROGRAM=../vtest/vtest gmake reg-tests REGTESTS_TYPES=default,bug,devel
+  on_failure:
+    debug_script: (for folder in /tmp/*regtest*/vtc.*; do cat $folder/INFO $folder/LOG; done && ls /tmp/haproxy.*.core && gdb -ex 'thread apply all bt full' ./haproxy /tmp/haproxy.*.core)