summaryrefslogtreecommitdiff
path: root/.github/workflows/static_code_analysis.yml
blob: 37d9a7b2cba9be8a642dd2bdd880f3ebfdda8520 (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
name: Static code analysis

on: 
  pull_request:
    branches:
      - master

jobs:
  scancode_job:
    runs-on: ubuntu-latest
    name: Static code analysis
    steps:
      - uses: actions/checkout@v3
      - name: Set up Python
        uses: actions/setup-python@v3
        with:
          python-version: 3.8
      
      - name: cppcheck
        shell: bash
        run: |
          sudo apt-get update
          sudo apt-get -qq install cppcheck
          git remote -v
          git fetch origin
          cppcheck --version
          ls
          git branch -a
          changed_files=$(git diff --name-only HEAD origin/master | grep -E '\.(c|cpp|cc|cxx)$' || true)
          if [ -n "$changed_files" ];then
              cppcheck --enable=warning,performance,portability --inline-suppr --error-exitcode=1 --force $changed_files
              err=$?
              if [ $err -ne 0 ]; then
                  echo "CPPCHECK REPORT, PLEASE CHECK THE WARNING !!!!!!!!!"
              fi
          fi