summaryrefslogtreecommitdiffstats
path: root/.github/workflows/fedora-rawhide.yml
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows/fedora-rawhide.yml')
-rw-r--r--.github/workflows/fedora-rawhide.yml58
1 files changed, 58 insertions, 0 deletions
diff --git a/.github/workflows/fedora-rawhide.yml b/.github/workflows/fedora-rawhide.yml
new file mode 100644
index 0000000..8f25781
--- /dev/null
+++ b/.github/workflows/fedora-rawhide.yml
@@ -0,0 +1,58 @@
+name: Fedora/Rawhide/QuicTLS
+
+on:
+ schedule:
+ - cron: "0 0 25 * *"
+
+permissions:
+ contents: read
+
+jobs:
+ build_and_test:
+ strategy:
+ matrix:
+ cc: [ gcc, clang ]
+ name: ${{ matrix.cc }}
+ runs-on: ubuntu-latest
+ container:
+ image: fedora:rawhide
+ steps:
+ - uses: actions/checkout@v4
+ - name: Install dependencies
+ run: |
+ dnf -y install git 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