summaryrefslogtreecommitdiff
path: root/.github/workflows/sdl_core_github_ci_coverity.yml
blob: 84769c26ead8710dff91d16fd2bea1d6b9b77e0c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
name: SDL Core Build With Coverity
on:
  push:
    branches:
      - master
  pull_request:
    branches:
      - master
jobs:
  build:
    environment: Coverity
    runs-on: ubuntu-20.04
    steps:
    - shell: bash
      env:
        COVERITY_SECRET: ${{ secrets.COVERITY_TOKEN }}
      run: |
        echo "$COVERITY_SECRET" && echo ${{ secrets.COVERITY_TOKEN }} && echo "end"
    - uses: actions/checkout@v2
    - name: Init Submodules
      run: git -C ${{ github.workspace }} submodule update --init --recursive
    # Install Dependencies
    - name: Apt Get Dependencies
      run: sudo apt-get update && sudo apt-get install libssl-dev libbluetooth3 libbluetooth-dev libudev-dev cmake html2text lcov git cmake automake1.11 build-essential libavahi-client-dev sqlite3 libsqlite3-dev libgtest-dev bluez-tools libpulse-dev libusb-1.0.0-dev cppcheck python3-pip python3-setuptools python3-wheel && sudo apt-get install -f clang-format-6.0
    - name: Setup CMAKE
      uses: jwlawson/actions-setup-cmake@v1.8
      with:
        cmake-version: '3.16.3'
    # Build Project
    - name: Cache 3rd Party
      id: core-3rd-party
      uses: actions/cache@v2
      with:
        path: ${{ github.workspace }}/core_3rd_party
        key: ${{ runner.os }}-core-3rd-party-v3
    - name: Make 3rd Party Directory
      if: steps.core-3rd-party.outputs.cache-hit != 'true'
      run: mkdir ${{ github.workspace }}/core_3rd_party
    - name: Make Directories
      run: cd ${{ github.workspace }} && cd ../ && mkdir build && cd build
    - name: Set 3rd Party Path
      run: echo "THIRD_PARTY_INSTALL_PREFIX=${{ github.workspace }}/core_3rd_party" >> $GITHUB_ENV
    - name: Set 3rd Party ARCH Path
      run: echo "THIRD_PARTY_INSTALL_PREFIX_ARCH=${{ github.workspace }}/core_3rd_party" >> $GITHUB_ENV
    - name: Configure
      run: cmake ../sdl_core -DLOGGER_NAME=BOOST
    - name: Download Coverity
      env:
        COVERITY_SECRET: ${{ secrets.COVERITY_TOKEN }}
      run: wget https://scan.coverity.com/download/linux64 --post-data "token=${COVERITY_SECRET}&project=smartdevicelink%2Fsdl_core" -O coverity_tool.tgz
    - name: unzip
      run: tar zxvf coverity_tool.tgz 
    - name: Build
      run: make install-3rd_party && make install_python_dependencies && ./cov-analysis-linux64-2020.09/bin/cov-build --dir cov-int make -j `nproc` install
    - name: Set Library Path
      run: echo "LD_LIBRARY_PATH=$THIRD_PARTY_INSTALL_PREFIX/lib:." >> $GITHUB_ENV
    - name: Compress Coverity
      run: tar czvf myproject.tgz cov-int
    - name: Upload Coverity
      env:
        COVERITY_SECRET: ${{ secrets.COVERITY_TOKEN }}
      run: curl --form token=${COVERITY_SECRET} --form email=jack@livio.io --form file=@myproject.tgz --form version="Version" --form description="Description" https://scan.coverity.com/builds?project=smartdevicelink%2Fsdl_core