ci/linux: split normal testing from valgrind testing
[platform/upstream/libxkbcommon.git] / .github / workflows / linux.yml
1 name: linux
2
3 on: [push, pull_request]
4
5 # Set permissions at the job level.
6 permissions: {}
7
8 jobs:
9   linux:
10     runs-on: ubuntu-20.04
11     permissions:
12       contents: read
13     strategy:
14       matrix:
15         compiler: [clang, gcc]
16     steps:
17       - uses: actions/checkout@v2
18         with:
19           persist-credentials: false
20       - uses: actions/setup-python@v2
21         with:
22           python-version: '3.9'
23       - name: Install dependencies
24         run: |
25           python -m pip install --upgrade meson
26           sudo apt update
27           sudo apt install -y \
28             doxygen libxcb-xkb-dev valgrind ninja-build \
29             libwayland-dev wayland-protocols bison graphviz
30       - name: Setup
31         run: |
32           meson setup build
33         env:
34           CC: ${{ matrix.compiler }}
35       - name: Build
36         run: |
37           meson compile -C build
38       - name: Test
39         run:
40           meson test -C build --print-errorlogs --no-suite python-tests
41       - name: Test with valgrind
42         run:
43           meson test -C build --print-errorlogs --setup=valgrind --no-suite python-tests