summaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
authorIlya Shipitsin <chipitsine@gmail.com>2023-04-08 13:30:42 +0200
committerWilliam Lallemand <wlallemand@haproxy.org>2023-04-14 10:05:32 +0200
commitea5a5e6feba75632d0140d5c41b5a74ea00ea8cf (patch)
tree9ea64ff8a7215e6bdf924d35c86ffcc599038733 /.github
parent86a40f5de9276e8f5d82a20b1bf72173fc8d9efa (diff)
downloadhaproxy-ea5a5e6feba75632d0140d5c41b5a74ea00ea8cf.tar.gz
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.
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/fedora-rawhide.yml61
1 files changed, 61 insertions, 0 deletions
diff --git a/.github/workflows/fedora-rawhide.yml b/.github/workflows/fedora-rawhide.yml
new file mode 100644
index 000000000..36ab7c141
--- /dev/null
+++ b/.github/workflows/fedora-rawhide.yml
@@ -0,0 +1,61 @@
+name: Fedora/Rawhide/QuicTLS
+
+on:
+ schedule:
+ - cron: "0 0 25 * *"
+
+permissions:
+ contents: read
+
+jobs:
+ build_and_test:
+ strategy:
+ matrix:
+ cc: [ gcc
+# ,clang # commented due to https://github.com/haproxy/haproxy/issues/1868
+ ]
+ name: ${{ matrix.cc }}
+ runs-on: ubuntu-latest
+ container:
+ image: fedora:rawhide
+ steps:
+ - uses: actions/checkout@v3
+ - name: Install dependencies
+ run: |
+ dnf -y groupinstall 'C Development Tools and Libraries' 'Development Tools'
+ dnf -y install pcre-devel zlib-devel pcre2-devel 'perl(FindBin)' perl-IPC-Cmd 'perl(File::Copy)' 'perl(File::Compare)' lua-devel socat findutils systemd-devel clang
+ - name: Install VTest
+ run: scripts/build-vtest.sh
+ - name: Install QuicTLS
+ run: QUICTLS=yes scripts/build-ssl.sh
+ - name: Build contrib tools
+ run: |
+ make admin/halog/halog
+ make dev/flags/flags
+ make dev/poll/poll
+ make dev/hpack/decode dev/hpack/gen-enc dev/hpack/gen-rht
+ - name: Compile HAProxy with ${{ matrix.cc }}
+ run: |
+ make -j3 CC=${{ matrix.cc }} V=1 ERR=1 TARGET=linux-glibc USE_OPENSSL=1 USE_QUIC=1 USE_ZLIB=1 USE_PCRE=1 USE_PCRE_JIT=1 USE_LUA=1 USE_SYSTEMD=1 ADDLIB="-Wl,-rpath,${HOME}/opt/lib" SSL_LIB=${HOME}/opt/lib SSL_INC=${HOME}/opt/include
+ make install
+ - name: Show HAProxy version
+ id: show-version
+ run: |
+ echo "::group::Show dynamic libraries."
+ ldd $(command -v haproxy)
+ echo "::endgroup::"
+ haproxy -vv
+ echo "version=$(haproxy -v |awk 'NR==1{print $3}')" >> $GITHUB_OUTPUT
+ - name: Run VTest for HAProxy ${{ steps.show-version.outputs.version }}
+ id: vtest
+ run: |
+ make reg-tests VTEST_PROGRAM=../vtest/vtest REGTESTS_TYPES=default,bug,devel
+ - name: Show VTest results
+ if: ${{ failure() && steps.vtest.outcome == 'failure' }}
+ run: |
+ for folder in ${TMPDIR}/haregtests-*/vtc.*; do
+ printf "::group::"
+ cat $folder/INFO
+ cat $folder/LOG
+ echo "::endgroup::"
+ done