blob: d778ee429ddddd6d90fb69e13a1830161b0d319b [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 }} \
33 USE_OPENSSL=1
34 sudo make install
35 - name: Show HAProxy version
36 id: show-version
37 run: |
38 echo "::group::Show dynamic libraries."
39 if command -v ldd > /dev/null; then
40 # Linux
41 ldd $(which haproxy)
42 else
43 # macOS
44 otool -L $(which haproxy)
45 fi
46 echo "::endgroup::"
47 haproxy -vv
48 echo "::set-output name=version::$(haproxy -v |awk 'NR==1{print $3}')"
49 - name: Launch HAProxy ${{ steps.show-version.outputs.version }}
50 run: haproxy -f .github/h2spec.config -D
51 - name: Run h2spec
52 run: h2spec -Svtk -h 127.0.0.1 -p 8443