mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2025-02-26 07:30:34 +00:00
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.
62 lines
2.1 KiB
YAML
62 lines
2.1 KiB
YAML
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
|