Ilia Shipitsin
976af317a4
CI: LibreSSL QUIC Interop: fix docker context
...
in the commit 98099287ee
building docker was switched to URL, but I forgotten to change context.
this is a followup fix.
2024-10-30 19:42:31 +01:00
Ilia Shipitsin
3ecca216b4
CI: enable chacha20 test on LibreSSL QUIC Interop
...
it was commented on purpose "until LibreSSL-4.0 is released".
lets enable it
2024-10-30 16:46:22 +01:00
Ilia Shipitsin
98099287ee
CI: switch QUIC Interop on LibreSSL to common docker image
...
previously we used different docker images for different SSL libs,
now all of them are merged into one, lets switch to it
2024-10-30 16:46:06 +01:00
Ilia Shipitsin
4d40e9384c
CI: switch QUIC Interop on AWS-LC to common docker image
...
previously we used different docker images for different SSL libs,
now all of them are merged into one, lets switch to it
2024-10-30 16:45:36 +01:00
Ilya Shipitsin
8a1aabb133
CI: modernize macos builds to macos-15
...
macos-15 support was announced few months ago: https://github.com/github/roadmap/issues/986
2024-10-21 07:54:38 +02:00
Ilya Shipitsin
50cf89ad5c
CI: bump development builds explicitely to Ubuntu 24.04
...
Initially we agreed to split builds into "latest" for development branch
and fixed 22.04 for stable branches. It got broken when "latest" label migrated
from ubuntu-22 to ubuntu-24 ... because of build cache. Cache key is built using
runner label, it was not prepared to use the same "latest" cache from ubuntu 22
on ubuntu 24. To make things clear, let's stick explicitely to ubuntu 24.
2024-10-21 07:54:35 +02:00
Ilya Shipitsin
b6491ab19f
CI: prepare Coverity build for Ubuntu 24
...
PCRE2 is recommended, PCRE was chosen for no reason. GHA Ubuntu 22 images include both libs,
but recent Ubuntu 24 does not. Let us prepare for Ubuntu 24
2024-10-21 07:54:32 +02:00
Ilya Shipitsin
4256961a44
CI: QUIC Interop: use different artifact names for uploading logs
...
artifact names must be unique, otherwise only first failed logs are
uploaded, other encounter 409 conflict
2024-08-26 11:19:41 +02:00
Ilya Shipitsin
438ad6b495
CI: QUIC Interop: do not run bandwidth measurement tests
...
crosstraffic, goodput tests are intended to perform bandwidth measurement,
we do not consider GitHub runners for that purpose
GH issue: https://github.com/haproxy/haproxy/issues/2688
2024-08-26 11:19:41 +02:00
Ilya Shipitsin
f583ed9469
CI: fix missing comma introduced in 956839c0f6
...
in 956839c0f6
syntax was broken due to missing
comma. it is follow up.
2024-08-26 11:19:41 +02:00
Ilya Shipitsin
956839c0f6
CI: QUIC Interop AWS-LC: enable ngtcp2 client
...
Let's add it and see how it goes.
GH issue: https://github.com/haproxy/haproxy/issues/2688
2024-08-24 19:13:59 +02:00
Ilia Shipitsin
ae8f6724a1
CI: QUIC Interop AWS-LC: enable chrome client
...
chrome is important browser, let's enable it in AWS-LC weekly tests.
the only test supported by chrome is http3
2024-08-20 05:13:46 +02:00
Ilia Shipitsin
6301042938
CI: modernize codespell action, switch to node 16
...
The following actions uses node12 which is deprecated and will be forced
to run on node16: codespell-project/codespell-problem-matcher@v1. For
more info:
https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
2024-08-20 05:13:46 +02:00
Ilia Shipitsin
8b422971ee
CI: QUIC Interop LibreSSL: document chacha20 test status
...
due to https://github.com/haproxy/haproxy/issues/2569 chacha20 is
disabled completely on LibreSSL. let's add a comment to not forget
enabling it
2024-08-20 05:13:26 +02:00
Ilia Shipitsin
ec1d93a6e9
CI: keep logs for failed QIUC Interop jobs
...
it might be useful to investigate logs of failed tests. to keep
artifacts small the following actions are taken
- only failed logs are kept
- logs retention is 6 days
2024-08-13 16:21:01 +02:00
Ilia Shipitsin
7fc52032e3
CI: harden NetBSD builds by ERR=1
...
Add ERR=1 build option to the NetBSD build from github.
2024-08-05 08:49:19 +02:00
Ilia Shipitsin
15d47eda37
CI: add weekly QUIC Interop regression against AWS-LC
...
currently only quic-go and picoquic clients are enabled.
Tests will be run weekly.
2024-08-05 08:46:49 +02:00
Ilia Shipitsin
89bdd8b62a
CI: weekly QUIC Interop: try to fix private image
...
for some reason image built in HAProxy workflow is "private", it
is succesfully built, but fails to pull. Let's try explicit docker login
for run job as well
2024-07-10 09:43:02 +02:00
Ilia Shipitsin
f8a30b69d2
CI: add weekly QUIC Interop regression against LibreSSL
...
currently only quic-go and picoquic clients are enabled with testsuites
supposed to be "green". Tests will be run weekly.
2024-07-05 15:11:21 +02:00
William Lallemand
5e361c7767
CI: github: do the AWS-LC weekly build with ERR=1
...
The weekly CI that tries new version of AWS-LC was not building with
ERR=1, which let us think that everything was good but there was in fact
new warning that we missed.
Add ERR=1 to the build so the CI will failed for any new warning.
2024-06-14 12:18:32 +02:00
William Lallemand
11e13175d4
CI: github: upgrade aws-lc to 1.29.0
...
Upgrade aws-lc to 1.29.0 on the push CI.
2024-06-14 11:37:11 +02:00
William Lallemand
935b3bd1b7
Revert "CI: github: upgrade aws-lc to 1.29.0"
...
This reverts commit 6e986e7493
.
2024-06-13 17:14:58 +02:00
William Lallemand
6e986e7493
CI: github: upgrade aws-lc to 1.29.0
...
Upgrade aws-lc to 1.29.0 on the push CI.
2024-06-13 17:11:04 +02:00
Ilia Shipitsin
ab23d7eb69
CI: speedup apt package install
...
we are fine to skip some repos like languages and translations.
this drops number of repos twice
2024-06-03 11:59:07 +02:00
Ilia Shipitsin
f3e6dfdc92
CI: VTest: accelerate package install a bit
...
let's check and install only package is required
2024-05-30 17:04:08 +02:00
Ilia Shipitsin
09db70d021
CI: use USE_PCRE2 instead of USE_PCRE
...
USE_PCRE2 is recommended, I guess USE_PCRE is left unintentionally
2024-05-29 22:37:26 +02:00
Ilia Shipitsin
11c088e203
CI: switch to lua 5.4
...
current release is 5.4, let's switch to it
2024-05-29 22:37:26 +02:00
Ilia Shipitsin
01c213a4bb
CI: use "--no-install-recommends" for apt-get
...
this reduces number of packages installed by 1
2024-05-29 22:37:26 +02:00
William Lallemand
40cd5cc0e2
CI: github: upgrade the WolfSSL job to 5.7.0
...
WolfSSL 5.70 was released in March 2024, let's upgrade our CI job to
this version.
2024-05-28 19:26:52 +02:00
Ilia Shipitsin
cbe78c0281
CI: drop asan.log umbrella completely
...
asan.log redirection appeared to work poorly, let's cease that practice
for good.
ML: https://www.mail-archive.com/haproxy@formilux.org/msg44844.html
2024-05-13 11:36:36 +02:00
Ilia Shipitsin
05ecba0813
CI: netbsd: limit scheduled workflow to parent repo only
...
it is not very useful for most of forks.
2024-05-06 08:26:14 +02:00
Ilia Shipitsin
fab5a23731
CI: add Illumos scheduled workflow
...
this is very initial build only implementation.
2024-05-06 08:26:05 +02:00
Ilia Shipitsin
48ae9fe8a4
CI: netbsd: adjust packages after NetBSD-10 released
...
pcre2 is installed already, installing it from packages lead to
conflict. curl is installed as a preparation for VTest
2024-05-03 09:01:36 +02:00
William Lallemand
378d500caf
REGTESTS: use -dI for insecure fork by default in the regtest scripts
...
Let's remove the CI HAPROXY_ARGS setting and set -dI for anything run
with the run-regtests.sh.
2024-04-22 16:15:57 +02:00
Ilya Shipitsin
76f56a39be
CI: modernize macos matrix
...
let's stick to macos-13 for stable branches and macos-14 for development branches.
since macos-14 is available for Apple Silicon, some modifications are required
for VTest (should be ported to VTest later)
news: https://github.blog/changelog/2024-01-30-github-actions-macos-14-sonoma-is-now-available/
2024-04-19 17:37:24 +02:00
Ilya Shipitsin
2bb9e3bd06
CI: reduce ASAN log redirection umbrella size
...
previously ASAN_OPTIONS=log_path=asan.log was intended for VTest
execution only, it should not affect "haproxy -vv" and hsproxy
config smoke testing
2024-04-17 11:14:44 +02:00
Ilya Shipitsin
b5dd8b466e
CI: revert kernel addr randomization introduced in 3a0fc864
...
It has been resolved on image generation side:
https://github.com/actions/runner-images/issues/9491
It is no harm to keep it on our side as well, but we can drop it.
2024-04-13 14:43:36 +02:00
Willy Tarreau
ac73a23454
BUILD: makefile: also drop DEBUG_CFLAGS
...
This one is often used as a gateway to inject regular CFLAGS, even though
not designed for this. It's now ignored, but any attempt at setting it
reports a warning suggesting to use CFLAGS or ARCH_FLAGS instead.
2024-04-11 17:33:28 +02:00
Willy Tarreau
88c151f9ca
BUILD: makefile: drop the ARCH variable and better document ARCH_FLAGS
...
ARCH_FLAGS was always present and is documented as being fed to both
CC and LD during the build. This is meant for options that need to be
consistent between the two stages such as -pg, -flto, -fsanitize=address,
-m64, -g etc. Its doc was lacking a bit of clarity though, and it was
not enumerated in the makefile's variables list.
ARCH however was only documented as affecting ARCH_FLAGS, and was just
never used as the only two really usable and supported ARCH_FLAGS options
were -m32 and -m64. In addition it was even written in the makefile that
it was CPU that was affecting the ARCH_FLAGS. Let's just drop ARCH and
improve the documentation on ARCH_FLAGS. Again, if ARCH is set, a warning
is emitted explaining how to proceed.
ARCH_FLAGS is now preset to -g so that we finally have a correct place
to deal with such debugging options that need to be passed to both
stages. The fedora and musl CI workflows were updated to also use it
instead of sticking to duplicate DEBUG_CFLAGS+LDFLAGS.
It's also worth noting that BUILD_ARCH was being passed to the build
process and never used anywhere in the code, so its removal will not
be noticed.
2024-04-11 17:33:28 +02:00
Willy Tarreau
8194499bec
BUILD: makefile: move -O2 from CPU_CFLAGS to OPT_CFLAGS
...
CPU_CFLAGS is meant to set the CPU-specific options (-mcpu, -march etc).
The fact that it also includes the optimization level is annoying because
one cannot be set without replacing the other. Let's move the optimization
level to a new independent OPT_CFLAGS that is added early to the list, so
that other CFLAGS (including CPU_CFLAGS) can continue to override it if
necessary.
2024-04-11 17:25:45 +02:00
Willy Tarreau
6b6a6ad431
CI: update the build options to get rid of unneeded DEBUG options
...
Now that DEBUG_STRICT and DEBUG_MEMORY_POOLS are the default, we can
drop them from the build options.
2024-04-11 17:25:45 +02:00
Ilya Shipitsin
ba1a0559e4
CI: extend Fedora Rawhide, add m32 mode
...
hopefully it will allow to catch regressions like this
https://github.com/haproxy/haproxy/commit/e41638a
2024-04-04 08:59:34 +02:00
Ilya Shipitsin
9dd9289cec
CI: vtest: show coredumps if any
...
if any coredump is found, it is passed to gdb with
'thread apply all bt full'
2024-04-02 07:29:08 +02:00
Ilia Shipitsin
3a0fc8641b
CI: temporarily adjust kernel entropy to work with ASAN/clang
...
clang runtime (shipped with clang14) is not compatible with recent
Ubuntu kernels
more details: https://github.com/actions/runner-images/issues/9491
2024-03-18 19:54:33 +01:00
William Lallemand
9c2e900a9b
CI: github: add -dI to haproxy arguments
...
-dI is useful when running with ASAN, allow to fork addr2line
2024-03-13 11:23:14 +01:00
William Lallemand
bb25ee7b26
CI: github: add -DDEBUG_LIST to the default builds
...
Add the -DDEBUG_LIST flag which allow to check if a list element was
removed twice.
2024-03-13 09:01:11 +01:00
Ilya Shipitsin
e3af7f832c
CI: skip scheduled builds on forks
...
tracking bleeding edge changes with some rare platforms or modern
compilers on scheduled basis is not what usually forks do. let's
skip by default in forks, if some fork is interested, it might be
enabled locally
2024-03-05 11:50:34 +01:00
Ilya Shipitsin
6142a3fad7
CI: enable monthly build only test on netbsd-9.3
...
it is interesting to try https://github.com/vmactions/netbsd-vm actions
2024-03-05 11:50:34 +01:00
Ilya Shipitsin
6b54a7b65e
CI: run more smoke tests on config syntax to check memory related issues
...
config syntax check seems add a value on testing code path not
covered by VTest, also checks are very fast
2024-03-05 11:50:34 +01:00
Tim Duesterhus
4559470728
CI: Update to actions/cache@v4
...
No functional change, but this upgrade is required, due to the v3 runtime being
deprecated:
> Node.js 16 actions are deprecated. Please update the following actions to use
> Node.js 20: actions/cache@v3. For more information see:
> https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/ .
2024-02-10 05:12:20 +01:00