blob: a11f0fa06c471cf48e888581be3a0ff8692d4d0d [file] [log] [blame]
Tim Duesterhuscdaa38e2020-11-13 20:15:53 +01001
2name: Spec Compliance
3
4on:
5 schedule:
6 - cron: "0 0 * * 3"
7
8jobs:
9 h2spec:
10 name: h2spec
11 runs-on: ${{ matrix.os }}
12 strategy:
13 matrix:
14 include:
15 - TARGET: linux-glibc
16 CC: gcc
17 os: ubuntu-latest
Tim Duesterhuscdaa38e2020-11-13 20:15:53 +010018 steps:
Tim Duesterhus4bb778b2022-04-09 22:08:41 +020019 - uses: actions/checkout@v3
Tim Duesterhuscdaa38e2020-11-13 20:15:53 +010020 - name: Install h2spec
Ilya Shipitsinfbf28572022-05-05 15:15:12 +050021 id: install-h2spec
Tim Duesterhuscdaa38e2020-11-13 20:15:53 +010022 run: |
Ilya Shipitsinfbf28572022-05-05 15:15:12 +050023 H2SPEC_VERSION=`curl --silent "https://api.github.com/repos/summerwind/h2spec/releases/latest" | jq -r -j '.tag_name'`
24 curl -fsSL https://github.com/summerwind/h2spec/releases/download/${H2SPEC_VERSION}/h2spec_linux_amd64.tar.gz -o h2spec.tar.gz
Tim Duesterhuscdaa38e2020-11-13 20:15:53 +010025 tar xvf h2spec.tar.gz
26 sudo install -m755 h2spec /usr/local/bin/h2spec
Tim Duesterhus03072a92022-10-14 19:46:07 +020027 echo "version=${H2SPEC_VERSION}" >> $GITHUB_OUTPUT
Tim Duesterhuscdaa38e2020-11-13 20:15:53 +010028 - name: Compile HAProxy with ${{ matrix.CC }}
29 run: |
30 make -j$(nproc) all \
31 ERR=1 \
32 TARGET=${{ matrix.TARGET }} \
33 CC=${{ matrix.CC }} \
Willy Tarreau16bfd732022-02-23 17:58:46 +010034 DEBUG="-DDEBUG_STRICT -DDEBUG_MEMORY_POOLS -DDEBUG_POOL_INTEGRITY" \
Tim Duesterhuscdaa38e2020-11-13 20:15:53 +010035 USE_OPENSSL=1
36 sudo make install
37 - name: Show HAProxy version
38 id: show-version
39 run: |
40 echo "::group::Show dynamic libraries."
41 if command -v ldd > /dev/null; then
42 # Linux
43 ldd $(which haproxy)
44 else
45 # macOS
46 otool -L $(which haproxy)
47 fi
48 echo "::endgroup::"
49 haproxy -vv
Tim Duesterhus03072a92022-10-14 19:46:07 +020050 echo "version=$(haproxy -v |awk 'NR==1{print $3}')" >> $GITHUB_OUTPUT
Tim Duesterhuscdaa38e2020-11-13 20:15:53 +010051 - name: Launch HAProxy ${{ steps.show-version.outputs.version }}
52 run: haproxy -f .github/h2spec.config -D
Ilya Shipitsinfbf28572022-05-05 15:15:12 +050053 - name: Run h2spec ${{ steps.install-h2spec.outputs.version }}
Tim Duesterhuscdaa38e2020-11-13 20:15:53 +010054 run: h2spec -Svtk -h 127.0.0.1 -p 8443