Commit Graph

27 Commits

Author SHA1 Message Date
Willy Tarreau
d78cf0fe0f BUILD: CI: disable slow regtests on Travis
We're getting almost 100% failure rate recently due to the "slow" tests
never completing in time on Travis. Peers do not synchronize their data
within the expected delay, health checks time out due to the tested
agent not responding, etc. This adds a lot of noise and completely voids
the value of the build test.

Let's disable the slow tests to try to get back to a fully working state.
2020-01-24 17:37:35 +01:00
Ilya Shipitsin
8aad9465f9 BUILD: CI: move cygwin builds to Github Actions
builds on travis-ci fail because of
https://travis-ci.community/t/cygwin-issue-cygheap-base-mismatch-detected/5359
unfortunately, documentation does not help.

so, let us move builds to Github Actions.

also, remove deprecated "sudo" directive from .travis.yml
2020-01-22 22:51:30 +01:00
Ilya Shipitsin
016797f6ab BUILD: CI: temporarily mark openssl-1.0.2 as allowed failure
Until #429 is resolved, let us ignore openssl-1.0.2 failures
2020-01-22 14:31:52 +01:00
Ilya Shipitsin
9bf2a1be89 BUILD: CI: introduce ARM64 builds
also several small changes:

openssl-1.0.2 upgraded to 1.0.2u
ppc64le upgraded to "bionic" (it was tricky part, linux-ppc64le is xenial,
while arch: ppc64le is bionic).
additional wait introduced for build ssl.
2020-01-22 06:47:24 +01:00
Ilya Shipitsin
7aed6ef8e3 BUILD: travis-ci: reenable address sanitizer for clang builds
address sanitizer was temporarily disabled. after getting rid of
LD_LIBRARY_PATH manipulation it works again, so let us enable it
2019-12-26 06:30:21 +01:00
Ilya Shipitsin
1afd2359eb BUILD: travis-ci: link with ssl libraries using rpath instead of LD_LIBRARY_PATH/DYLD_LIBRARY_PATH
modifying LD_LIBRARY_PATH/DYLD_LIBRARY_PATH also affects other utilities like curl
to avoid side effects let us use rpath for ssl library linking

Fixes #418
2019-12-21 12:14:21 +01:00
Ilya Shipitsin
632cae2b11 BUILD: CI: comment out cygwin build, upgrade various ssl libraries
cirrus ci builds are now limited to branches master, next
travis-ci images are upgraded to ubuntu bionic
cygwin builds are temporarily disabled on travis-ci
(maybe someone will figure out how to fix them, here's link
https://travis-ci.community/t/cygwin-issue-cygheap-base-mismatch-detected/5359/2 )

openssl upgraded to 1.0.2t, 1.1.0l, 1.1.1d
libressl are upgraded (2.9.2, 2.8.3, 2.7.5)  --> (3.0.2, 2.9.2, 2.8.3)
2019-10-29 06:27:50 +01:00
Willy Tarreau
a3956aa3b6 BUILD: travis-ci: limit build to branches "master" and "next"
Occasionally some short-lived branches are pushed to help developers
rebase their work, these ones do not need to be built. This patch
explicitly lists "master" and "next" as the two only branches of
interest. It also adds a comment with the URL for the build status.
2019-10-17 06:53:55 +02:00
Ilya Shipitsin
a668761181 BUILD: travis-ci: add PCRE2, SLZ build 2019-09-23 19:08:39 +02:00
Ilya Shipitsin
4a2ffe6ae9 BUILD: CI: temporarily disable ASAN
it turned out that ASAN breaks things. until this is resolved,
let us disable ASAN
2019-09-15 12:42:57 +02:00
Ilya Shipitsin
6f9fe36676 BUILD: travis-ci: trigger non-mainstream configurations only on daily builds.
Let us save some electricity of Travis-CI.

The following configurations are built on every push:

  - linux-glibc with threads+openssl 1.1.1 on x86 + clang
  - linux-glibc with threads+libressl 2.9.2 on x86 + clang
  - linux-glibc without SSL nor threads on x86 + clang
  - osx with openssl-1.1.1 + clang

The following configurations are built daily:

  - linux-ppc64le + openssl-1.0.2
  - linux + openssl-1.1.0 + 51d/tree
  - linux + libressl-2.8.3
  - linux + libressl-2.7.5 + prometheus
  - linux + boringssl
  - cygwin
  - coverity scan
2019-08-20 08:13:00 +02:00
Ilya Shipitsin
1b77262cfb BUILD: travis-ci: enable daily Coverity scan
Coverity scan takes some time, also we are limited to 3 scans per day.
So, running it once a day seem to be good idea.
2019-08-06 06:41:03 +02:00
Ilya Shipitsin
862d6932ea BUILD: travis-ci: TFO and GETADDRINFO are now enabled by default
This default changed in the linux-glibc target with commits 364d6f5
and a26181e.
2019-06-15 23:24:47 +02:00
Willy Tarreau
c26b4675e8 BUILD: travis-ci: switch to linux-glibc instead of linux2628
The Linux target has changed and only linux-glibc is known now.
2019-06-15 17:43:18 +02:00
Ilya Shipitsin
b41adedaf7 BUILD: travis-ci: add 51Degree device detection, update openssl to 1.1.1c 2019-06-13 17:02:23 +02:00
Ilya Shipitsin
a088d3dea9 BUILD: travis-ci improvements
full list:

update LibreSSL to 2.9.2
speed up build by using "make -j3"
cache BoringSSL checkout
build prometeus exporter
add basic cygwin build
add USE_TFO=1, USE_SYSTEMD=1 to linux builds
2019-06-05 10:02:42 +02:00
Ilya Shipitsin
46166c2965 BUILD: travis: add sanitizers to travis-ci builds
full list of changes:

use TARGET=osx instead of generic for osx builds,
add USE_PCRE_JIT=1, USE_GETADDRINFO=1 to build matrix,
enable address sanitizer for clang
enable device detection: WURFL, DEVICEATLAS
2019-05-22 17:17:15 +02:00
Ilya Shipitsin
b9ae7643d8 BUILD: travis-ci: make TMPDIR global variable in travis-ci
This patch will reveal osx reg-tests errors (after osx build is repaired).
2019-05-11 06:07:47 +02:00
Ilya Shipitsin
35d20afe6f BUILD: add BoringSSL to travis-ci build matrix 2019-05-10 10:39:29 +02:00
Ilya Shipitsin
d8db4e6dba BUILD: travis-ci bugfixes and improvements
Call missing scripts/build-ssl.sh (which actually builds SSL variants)
Enable OpenSSL, LibreSSL builds caching, it saves a bunch of time
LibreSSL builds are not allowed to fail anymore
Add openssl to osx builds
2019-05-08 08:10:56 +02:00
Frédéric Lécaille
6c06815751 BUILD: travis: TMPDIR replacement.
TMPDIR default value may be too long to create UNIX sockets for the stats
used during the reg tests. Indeed vtest builds its temporary working directory
${tmpdir} variable from TMPDIR variable, with /tmp as value if not already set.
This is the case on Linux contrary to OS X which sets TMPDIR with a too much long
value.

With this path we revert the part of 88c63a6 commit which tried to shorten this
TMPDIR value modifying script/run-regtests.sh. Unfortunately this was not
sufficient. Furthermore this patch force TMPDIR to /tmp value for all the OS'es.

Thank you to Tim Düsterhus and Ilya for having helped on this issue.
2019-05-06 08:10:07 +02:00
Ilya Shipitsin
17641a7fbf BUILD: temporarily mark LibreSSL builds as allowed to fail 2019-05-06 07:26:38 +02:00
Ilya Shipitsin
70e0224987 BUILD: travis-ci: get back to osx without openssl support
there's some issue with socket path, after it is resolved,
we will enable openssl for osx
2019-05-06 07:26:15 +02:00
Ilya Shipitsin
054a5b82c1 BUILD: extend travis-ci matrix
added openssl-1.0.2, 1.1.0, 1.1.1, libressl-2.7.5, 2.8.3, 2.9.1
added linux-ppc64le image
2019-05-05 10:16:13 +02:00
Willy Tarreau
a0abc8f2be BUILD: travis: remove the "allow_failures" entry
Now that OSX passes all regtests as well, remove this temporary entry.
2019-04-25 08:58:02 +02:00
Tim Duesterhus
88c63a6e55 BUILD: extend Travis CI config to support more platforms
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 configurations
on OS X
2019-04-25 08:24:29 +02:00
Ilya Shipitsin
8a9d55bb9b MEDIUM: enable travis-ci builds
currently only xenial/clang build is enabled. osx and xenial/gcc
will be enabled later.

travis-ci is cloud based continuous integration, builds will be
started automatically if they are enabled for certain repo or fork.

Signed-off-by: Ilya Shipitsin <chipitsine@gmail.com>
2019-04-18 18:39:55 +02:00