From: Tim Düsterhus <[email protected]>
This commit extends the Travis CI configuration to build HAProxy with
gcc on Linux, clang on Mac and cleans up the build flag configuration to
be easier extendable.
Note: At the moment HAProxy fails on Travis for two configurations
- on Linux with build flags enabled
- on OS X
Thus these two jobs are set to 'allow_failures' for now. Once the issues
have been resolved this special configuration should be removed.
---
.travis.yml | 47 ++++++++++++++++++++++++++++++++++++-----------
1 file changed, 36 insertions(+), 11 deletions(-)
diff --git a/.travis.yml b/.travis.yml
index c8937f377..0e26fe7e2 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,24 +1,49 @@
-sudo: required
dist: xenial
language: c
+addons:
+ apt:
+ packages:
+ - liblua5.3-dev
+
matrix:
include:
-# - os: linux
-# compiler: gcc
-# env: TARGET=linux2628
+ - os: linux
+ compiler: gcc
+ env: TARGET=linux2628 FLAGS=
+ - os: linux
+ compiler: gcc
+ env: TARGET=linux2628 FLAGS="USE_ZLIB=1 USE_PCRE=1 USE_LUA=1 USE_OPENSSL=1"
- os: linux
compiler: clang
- env: TARGET=linux2628 USE_THREAD=1 USE_OPENSSL=1 USE_PCRE=1 USE_ZLIB=1
USE_GETADDRINFO=1
-# - os: osx
-# compiler: clang
-# env: TARGET=osx SSL_LIB=/usr/local/opt/openssl/lib
SSL_INC=/usr/local/opt/openssl/include TMPDIR=/var/tmp
+ env: TARGET=linux2628 FLAGS=
+ - os: osx
+ compiler: clang
+ env: TARGET=generic FLAGS=
+ allow_failures:
+ - os: osx
+ - env: TARGET=linux2628 FLAGS="USE_ZLIB=1 USE_PCRE=1 USE_LUA=1
USE_OPENSSL=1"
install:
- git clone https://github.com/VTest/VTest.git ../vtest
- - make -C ../vtest
+ # Special flags due to: https://github.com/vtest/VTest/issues/12
+ - make -C ../vtest FLAGS="-O2 -s -Wall"
+
+before_script:
+ # This is a fix for the super long TMPDIR on Mac making
+ # the unix socket path names exceed the maximum allowed
+ # length.
+ - sed -i'.original'
'/TESTDIR=.*haregtests/s/haregtests-.*XXXXXX/regtest.XXX/'
scripts/run-regtests.sh
script:
- - make CC=$CC V=1 TARGET=$TARGET USE_THREAD=${USE_THREAD}
USE_OPENSSL=${USE_OPENSSL} USE_PCRE=${USE_PCRE} USE_ZLIB=${USE_ZLIB}
USE_GETADDRINFO=${USE_GETADDRINFO}
- - make reg-tests PATH=${PATH}:${PWD}/../vtest VTEST_PROGRAM="../vtest/vtest
-v"
+ - make CC=$CC V=1 TARGET=$TARGET $FLAGS
+ - ./haproxy -vv
+ - env VTEST_PROGRAM=../vtest/vtest make reg-tests
+
+after_failure:
+ - |
+ for folder in ${TMPDIR:-/tmp}/*regtest*/vtc.*; do
+ cat $folder/INFO
+ cat $folder/LOG
+ done
--
2.21.0