summaryrefslogtreecommitdiff
path: root/.github/workflows
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/static_code_analysis.yml36
1 files changed, 36 insertions, 0 deletions
diff --git a/.github/workflows/static_code_analysis.yml b/.github/workflows/static_code_analysis.yml
new file mode 100644
index 0000000000..37d9a7b2cb
--- /dev/null
+++ b/.github/workflows/static_code_analysis.yml
@@ -0,0 +1,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