blob: 9f2bec28964aaac9ab76f8aa4412b3516e303fe4 [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
18 env:
19 H2SPEC_VERSION: '2.6.0'
20 steps:
21 - uses: actions/checkout@v1
22 - name: Install h2spec
23 run: |
24 curl -fsSL https://github.com/summerwind/h2spec/releases/download/v${H2SPEC_VERSION}/h2spec_linux_amd64.tar.gz -o h2spec.tar.gz
25 tar xvf h2spec.tar.gz
26 sudo install -m755 h2spec /usr/local/bin/h2spec
27 - name: Compile HAProxy with ${{ matrix.CC }}
28 run: |
29 make -j$(nproc) all \
30 ERR=1 \
31 TARGET=${{ matrix.TARGET }} \
32 CC=${{ matrix.CC }} \
Tim Duesterhus9fee7e02020-11-21 18:08:00 +010033 DEBUG=-DDEBUG_STRICT=1 \
Tim Duesterhuscdaa38e2020-11-13 20:15:53 +010034 USE_OPENSSL=1
35 sudo make install
36 - name: Show HAProxy version
37 id: show-version
38 run: |
39 echo "::group::Show dynamic libraries."
40 if command -v ldd > /dev/null; then
41 # Linux
42 ldd $(which haproxy)
43 else
44 # macOS
45 otool -L $(which haproxy)
46 fi
47 echo "::endgroup::"
48 haproxy -vv
49 echo "::set-output name=version::$(haproxy -v |awk 'NR==1{print $3}')"
50 - name: Launch HAProxy ${{ steps.show-version.outputs.version }}
51 run: haproxy -f .github/h2spec.config -D
52 - name: Run h2spec
53 run: h2spec -Svtk -h 127.0.0.1 -p 8443