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
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
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
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
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
Willy Tarreau
98291440b8
Revert "CI: enable spell check on git push"
...
This reverts commit 413aa6e2e94a591d444ef9bd174a99b64eea8436.
It reports failures that neither the patch's author nor the committer
are able to check for before pushing, causing an excess of failure
reports that can hardly be acted upon. We need to find a better
solution, let's revert it for now.
2024-01-26 19:58:14 +01:00
Ilya Shipitsin
413aa6e2e9
CI: enable spell check on git push
2024-01-26 17:30:03 +01:00
Ilya Shipitsin
4bdfd2ebc9
CI: extend spell check white list
...
siz - seen in src/debug.c
EXPERIM - seen in src/cli.c
2024-01-26 17:29:27 +01:00
Ilya Shipitsin
07dc373163
CI: codespell: add more words to whitelist
...
"Collet" is "Yann Collet" - a developer of xxhash
"bu" is variable name in src/sock_unix.c
"htmp" is variable name in src/quic_retransmit.c
2024-01-12 08:34:53 +01:00
Ilya Shipitsin
128490f183
CI: codespell: ignore some words in URLs
...
"trafic,ressources" are found in URIs, due to
https://github.com/codespell-project/actions-codespell/issues/55 we cannot use
wildcard for exclusion, let start with fixed list
2024-01-12 08:34:53 +01:00
Ilya Shipitsin
63957b7c87
CI: limit codespell checks to main repo, not forks
2023-11-23 16:23:14 +01:00
William Lallemand
aaa326b571
CI: github: add USE_QUIC=1 to aws-lc build
...
Feature are limited but aws-lc can now build with USE_QUIC=1.
2023-10-04 17:03:34 +02:00
Ilya Shipitsin
d89734bcc5
CI: musl: drop shopt in workflow invocation
...
"shopt" is bash specific, while musl uses bourne shell.
/__w/_temp/1b0f5f5d-c71b-4a66-8be3-e1fe51c10993.sh: line 7: shopt: not found
2023-09-08 19:05:04 +02:00
Ilya Shipitsin
8382d71808
CI: musl: highlight section if there are coredumps
...
previously, section was collapsed, thus it was harder to find that
there's something to look at
2023-09-08 19:05:04 +02:00
Tim Duesterhus
5c923f1869
CI: Update to actions/checkout@v4
...
No functional change, but we should keep this current.
see 5f4ddb54b05ae0355b1f64c22263a6bc381410df
2023-09-06 17:46:02 +02:00
Andrew Hopkins
06d36913bd
CI: github: Add a weekly CI run building with AWS-LC
...
Use determine_latest_aws_lc() from matrix.py to always test with
the latest release of AWS-LC. Run the common "default,bug,devel"
tests.
2023-09-06 13:41:36 +02:00
Ilya Shipitsin
28e94c6192
CI: fedora: fix "dnf" invocation syntax
...
In 39e205302e8afb68d954e17944fad5f8c1587287 I erroneously used
"dnf git" instead of "dnf install"
2023-08-25 09:31:09 +02:00
Ilya Shipitsin
54cafa908d
CI: get rid of travis-ci wrapper for Coverity scan
...
historically coverity scan was performed by travis-ci script, let us
rewrite it in bash
2023-08-10 08:01:17 +02:00
Ilya Shipitsin
39e205302e
CI: do not use "groupinstall" for Fedora Rawhide builds
...
Fedora Rawhide migrated to dnf5, which does not support "groupinstall"
2023-08-10 08:01:17 +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
8a46f98615
CI: drop Fedora m32 pipeline in favour of cross matrix
...
Fedora m32 monthly was introduced before cross matrix. Actually,
many of cross builds are 32 bit, no need to keep dedicated Fedora
definition
2023-05-17 14:57:10 +02:00
Ilya Shipitsin
5414d82ce5
CI: enable monthly Fedora Rawhide clang builds
...
that was temporarily disabled due to
https://github.com/haproxy/haproxy/issues/1868
we are unblocked, let us enable clang in matrix
2023-05-13 17:42:32 +02:00
Ilya Shipitsin
edfa7c99e9
CI: extend spellchecker whitelist, add "clen" as well
...
"clen" is all around the code, since codespell cannot distingush
variables names, let us ignore it
2023-04-23 09:44:53 +02:00
Ilya Shipitsin
ea5a5e6feb
CI: enable monthly test on Fedora Rawhide
...
Fedora Rawhide is shipped with the most recent compilers, not yet released with
more conservative distro. It is good to catch compile errors on those compilers.
2023-04-14 10:05:32 +02:00
Ilya Shipitsin
86a40f5de9
CI: bump "actions/checkout" to v3 for cross zoo matrix
...
actions/checkout@v2 is deprecated, accidently it was not updated in our
build definition
2023-04-14 10:05:09 +02:00
Ilya Shipitsin
d481ed3fa0
CI: exclude doc/{design-thoughts,internals} from spell check
...
as those directories do contain many documents written in French,
codespell is catching a lot of false positives scanning them.
2023-04-01 18:34:10 +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
Ilya Shipitsin
5526f922af
CI: add monthly gcc cross compile jobs
...
Build only gcc cross compile jobs are added with monthly run to catch
rare errors, mostly 32bit <--> 64bit
2022-10-30 17:17:43 +01:00
William Lallemand
6435801d09
CI: github: dump the backtrace of coredumps in the alpine container
...
This patch allows to show the backtrace of a coredump produced in the
alpine/musl jobs.
It activates some option required by the containers to allow the
production of coredump, set a shared directory so the kernel could dump
the coredump within the container. Some debug packages were also added.
2022-10-21 09:21:33 +02: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
Ilya Shipitsin
4c785f0a1f
CI: enable weekly "m32" builds on x86_64
...
this is build only workflow, catches potential "size_t" mismatches
--
v2 job name added, various markup changes
2022-08-06 17:10:16 +02:00
Ilya Shipitsin
0a802114e0
CI: dynamically determine actual version of h2spec
...
previously we used hardcoded h2spec version. let us switch to
the latest available
2022-05-08 11:01:58 +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