William Lallemand
eebb448f49
CI: github: fix vtest.yml with "not quictls"
...
Previous patch 0a4642 ("CI: github: define the right quictls version in
each jobs") didn't use the right syntax for string matching.
2026-01-19 13:22:10 +01:00
William Lallemand
0a464215c5
CI: github: define the right quictls version in each jobs
...
openssl+quictls is not maintained anymore (quictls/openssl), however we
still need to test openssl+quictls 1.1.1. Other openssl+quictls branches
don't need to be tested.
The quictls hardfork is tested in the 'quictls' job, it uses the
'main' branch in the quictls/quictls repository.
2026-01-19 11:45:57 +01:00
William Lallemand
1f562687e3
CI: github: make install-bin instead of make install
...
make install now have a dependency to install-admin which have a
dependency to admin/halog/halog.
halog links haproxy .o together with its own objects, but those objects
when built with ASAN must also be linked with ASAN or it won't be
possible to link the binary.
We don't need an ASAN-ready halog, so let's just do an install-bin
instead that will just install haproxy.
2025-11-18 20:11:23 +01:00
William Lallemand
6499c0a0d5
CI: github: build halog on the vtest job
...
halog was not built in the vtest job. Add it to vtest.yml to be able to
track build issues on push.
2025-09-26 16:29:29 +02:00
Ilia Shipitsin
8c8e50e09a
CI: move VTest preparation & friends to dedicated composite action
...
reference: https://docs.github.com/en/actions/tutorials/create-actions/create-a-composite-action
preparing coredump limits, installing VTest are now served by dedicated
composite action
2025-09-22 19:18:23 +02:00
Tim Duesterhus
b81a7f428b
CI: Update to actions/checkout@v5
...
No functional change, but we should keep this current.
see 5f4ddb54b0
see 5c923f1869
2025-08-13 19:15:04 +02:00
Ilia Shipitsin
6b2bbcb428
CI: vtest: add os name to OT cache key
...
currently OpenTracing cache does not include os name. it does not
allow to distinguish, for example between ubuntu-24.04 and
ubuntu-24.04-arm.
2025-08-08 15:36:12 +02:00
William Lallemand
c6e6318125
CI: github: add "jose" to apt dependencies
...
jose is used in the JWS unit-test, let's add it to the CI.
2025-03-11 22:29:40 +01:00
William Lallemand
29db5406b4
CI: github: show results of the Unit tests
...
Add a "Show Unit-Tests results" section which show each unit test which
failed by displaying their result file.
2025-03-06 21:23:54 +01:00
William Lallemand
937ece45d4
CI: github: remove smoke tests from vtest.yml
...
Smoke tests from the vtest.yml are not useful anymore since they are run
directly by tests/unit/smoke/test.sh. This patch removes them.
2025-03-03 12:46:20 +01:00
William Lallemand
7a2a613132
CI: github: run make unit-tests on the CI
...
Run the new make unit-tests on the CI.
It requires HAProxy to be built with -DDEBUG_UNIT so the -U option is
available in HAProxy
2025-03-03 12:43:32 +01:00
Ilia Shipitsin
d61cac4ed1
CI: use "/tmp" as default value for TMPDIR when searching logs
...
VTest use /tmp already if not defined, let stick the behaviour for
searching logs as well
2024-12-10 08:20:51 +01: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
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
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
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
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
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
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
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
Tim Duesterhus
5c923f1869
CI: Update to actions/checkout@v4
...
No functional change, but we should keep this current.
see 5f4ddb54b0
2023-09-06 17:46:02 +02:00
Ilya Shipitsin
f7dcceccc9
CI: explicitely highlight VTest result section if there's something
...
it turned out that people miss VTest result section because it is not highlighted,
let us fix that
2023-07-17 15:56:53 +02:00
Ilya Shipitsin
7e6e0388d6
CI: run 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
2023-04-01 18:30:52 +02:00
Tim Duesterhus
96e03e1a89
CI: Unify the GITHUB_TOKEN name across matrix.py and vtest.yml
...
This makes naming a little clearer in matrix.py, because the name matches the
name of the actual secret.
2023-01-03 16:28:34 +01:00
William Lallemand
61839b098d
CI: github: use the GITHUB_TOKEN instead of a manually generated token
...
Github allows to use a auto generated GITHUB_TOKEN so we don't need to
handle the token in the secret configuration.
https://docs.github.com/en/actions/security-guides/automatic-token-authentication#about-the-github_token-secret
2022-12-23 15:19:25 +01:00
William Lallemand
2cb1493748
CI: github: set ulimit -n to a greater value
...
Set ulimit -n to 65536 to limit less the maxconn computation.
Could be backported at least to 2.5.
2022-12-14 00:31:19 +01:00
Ilya Shipitsin
4a04cd35ae
CI: github: split ssl lib selection based on git branch
...
when *SSL_VERSION="latest" behaviour was introduced, it seems to be fine
for development branches, but too intrusive for stable branches.
let us limit "latest" semantic only for development builds, if branch name
contains "haproxy-" it is supposed to be stable branch, no latest openssl
should be taken
[wla: must be backported as far as 2.6]
Signed-off-by: William Lallemand <wlallemand@haproxy.org >
2022-12-12 16:20:48 +01:00
Willy Tarreau
a051816c03
CI: emit the compiler's version in the build reports
...
Some occasional builds fail only on a specific platform and being able
to figure the exact compiler version used there is crucial. It's not
easy to guess from the rest of the output, so let's add it before the
platform-specific defines, which suit the same needs.
2022-11-14 11:14:02 +01:00
Tim Duesterhus
b87ecbb179
CI: Replace the deprecated ::set-output command by writing to $GITHUB_OUTPUT in workflow definition
...
See "CI: Replace the deprecated `::set-output` command by writing to
$GITHUB_OUTPUT in matrix.py" for the reasoning behind this commit.
2022-10-14 19:50:34 +02:00
Tim Duesterhus
538d8fe8b7
CI: Update to actions/cache@v3
...
No functional changes for our use case, but we should keep this current.
2022-04-11 07:13:24 +02:00
Tim Duesterhus
5f4ddb54b0
CI: Update to actions/checkout@v3
...
No functional change, but we should keep this current.
2022-04-11 07:13:24 +02:00
Willy Tarreau
a0a6911bde
CI: github: enable pool debugging by default
...
This enables DEBUG_MEMORY_POOLS and DEBUG_POOL_INTEGRITY so that by
default the tests run under stricter checks, which are likely to
catch more bugs. Note that these ones are permanently used in prod
on haproxy.org.
2022-02-23 18:14:49 +01:00
Ilya Shipitsin
27df87cc63
CI: github actions: use cache for SSL libs
...
we have two kinds of SSL libs built - git based and version based.
this commit introduces caching for version based SSL libs.
2022-01-25 12:02:08 +01:00
Ilya Shipitsin
e9efc3a5be
CI: refactor OpenTracing build script
...
re-use scripts/build-ot.sh in CI again. Bump opentracing-cpp to 1.6.0
2022-01-19 07:37:40 +01:00
Ilya Shipitsin
b9e3fb7315
CI: github actions: use cache for OpenTracing
...
this caches OpenTracing libs between builds, should save couple of minutes
for each build.
2022-01-13 13:37:34 +01:00
Ilya Shipitsin
65eab587a2
CI: github actions: clean default step conditions
...
step condition "if: ${{ !failure() }}" was added in 2ef4c7c843
during my experiments. As Tim Dsterhus mentioned, that condition is default and may be omitted.
2022-01-11 15:00:55 +01:00
Ilya Shipitsin
2ef4c7c843
CI: Github Actions: do not show VTest failures if build failed
...
this is mostly cleanup, issue is minor. If build failed, VTest execution
tried to be performed as well as VTest result show. This change ignores
those steps if build failed.
2021-12-25 15:09:06 +01:00
Willy Tarreau
4673c5e2c8
CI: github actions: add the output of $CC -dM -E-
...
Sometimes figuring what differs between platforms is useful to fix
build issues, to decide what ifdef to add for example. Let's always
call $CC -dM -E- before starting make.
2021-11-26 17:58:42 +01:00
Tim Duesterhus
89c9d0a169
CI: Add permissions to GitHub Actions
...
This change locks down the permissions of the access token in GitHub Actions to
only allow reading the repository contents and nothing else.
see https://docs.github.com/en/actions/security-guides/automatic-token-authentication#permissions-for-the-github_token
2021-10-18 07:17:04 +02:00
Tim Duesterhus
8a91fa4219
CI: Replace the requirement for 'sudo' with a call to 'ulimit -n'
...
Using 'sudo' required quite a few workarounds in various places. Setting an
explicit 'ulimit -n' removes the requirement for 'sudo', resulting in a cleaner
workflow configuration.
2021-06-17 14:57:43 +02:00
Ilya Shipitsin
75c95aa649
CI: github actions: add OpenTracing builds
...
let us add OpenTracing module to "all features" builds
2021-05-18 18:37:37 +02:00
Ilya Shipitsin
0b03895620
CI: introduce scripts/build-vtest.sh for installing VTest
...
we install VTest for all CI systems, let us unify instalation
2021-05-18 10:48:30 +02:00
Tim Duesterhus
b38b5c3d0d
Revert "CI: Build VTest with clang"
...
The issue with VTest not building properly in gcc is fixed since commit
vtest/VTest@0730540c43 . Revert the patch to keep
the CI configuration simple.
This reverts commit e61f53eb44 .
2021-05-12 21:28:08 +02:00
Tim Duesterhus
e61f53eb44
CI: Build VTest with clang
...
Current VTest master fails to build using gcc, see vtest/VTest#27 .
This patch is to be reverted once VTest is fixed.
2021-05-10 23:00:59 +02:00