]> git.proxmox.com Git - mirror_lxc.git/blame - .github/workflows/coverity.yml
github: fix coverity (add libpam-dev)
[mirror_lxc.git] / .github / workflows / coverity.yml
CommitLineData
7e8b9b04 1name: Coverity build and upload
4bc1dabe 2on:
7b89a43d
SG
3 push:
4 branches:
5 - master
fe3add2a 6permissions:
7 contents: read
8
4bc1dabe
SG
9jobs:
10 test:
0ab1a634 11 runs-on: ubuntu-22.04
4bc1dabe
SG
12 steps:
13 - name: Checkout code
dc4f1220 14 uses: actions/checkout@v3
4bc1dabe
SG
15
16 - name: Download Coverity Build Tool
17 run: |
18 wget -q https://scan.coverity.com/download/cxx/linux64 --post-data "token=$TOKEN&project=lxc/lxc" -O cov-analysis-linux64.tar.gz
19 mkdir cov-analysis-linux64
20 tar xzf cov-analysis-linux64.tar.gz --strip 1 -C cov-analysis-linux64
21 env:
22 TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}
23
24 - name: Install dependencies
25 run: |
26 sudo apt-get update -qq
a8dcf88d 27 sudo apt-get install -qq gcc clang meson
b37cce95 28 sudo apt-get install -qq libapparmor-dev libcap-dev libseccomp-dev libselinux1-dev linux-libc-dev libpam0g-dev docbook2x libsystemd-dev
4bc1dabe 29
617efa73 30 - name: Compiler version
617efa73 31 run: |
55406087 32 gcc --version
617efa73
CB
33
34 - name: Kernel version
35 run: |
36 uname -a
37
38 - name: Mount table
39 run: |
40 findmnt
41
4bc1dabe
SG
42 - name: Run coverity
43 run: |
44 # Configure
45 export PATH="$(pwd)/cov-analysis-linux64/bin:${PATH}"
46 export CFLAGS="-Wall -Werror"
47 export LDFLAGS="-pthread -lpthread"
4bc1dabe
SG
48
49 BUILD="$(pwd)/build"
a8dcf88d 50 meson setup -Dtests=true -Dpam-cgroup=true -Dcoverity-build=true build/
4bc1dabe
SG
51
52 # Build
9c3a240b 53 cov-build --dir cov-int ninja -C ${BUILD}
4bc1dabe
SG
54 tar czvf lxc.tgz cov-int
55
56 # Submit the results
57 curl \
58 --form project=lxc/lxc \
59 --form token=${TOKEN} \
60 --form email=lxc-devel@lists.linuxcontainers.org \
61 --form file=@lxc.tgz \
62 --form version=master \
63 --form description="${GITHUB_SHA}" \
64 https://scan.coverity.com/builds?project=lxc/lxc
65 env:
66 TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}