name: Run clang-tidy on the full codebase on: workflow_dispatch: jobs: clang_tidy_check: name: "Clang-tidy check" runs-on: [self-hosted, Linux, X64, Ubuntu20.04] env: THREADS: 24 MEMGRAPH_ENTERPRISE_LICENSE: ${{ secrets.MEMGRAPH_ENTERPRISE_LICENSE }} MEMGRAPH_ORGANIZATION_NAME: ${{ secrets.MEMGRAPH_ORGANIZATION_NAME }} steps: - name: Set up repository uses: actions/checkout@v2 with: # Number of commits to fetch. `0` indicates all history for all # branches and tags. (default: 1) fetch-depth: 0 - name: Build debug binaries run: | # Activate toolchain. source /opt/toolchain-v4/activate # Initialize dependencies. ./init # Build debug binaries. cd build cmake .. make -j$THREADS - name: Run clang-tidy run: | source /opt/toolchain-v4/activate # The results are also written to standard output in order to retain them in the logs ./tools/github/clang-tidy/run-clang-tidy.py -p build -j $THREADS -extra-arg="-DMG_CLANG_TIDY_CHECK" -clang-tidy-binary=/opt/toolchain-v4/bin/clang-tidy "$PWD/src/*" | tee ./build/full_clang_tidy_output.txt - name: Summarize clang-tidy results run: cat ./build/full_clang_tidy_output.txt | ./tools/github/clang-tidy/count_errors.sh