nextcloud-desktop/.github/workflows/clang-tidy-review.yml
Josh c19bf7945b
ci(clang-tidy-review): Fix for qt6 + swap to docker-ci container (#6860)
* ci(clang-tidy-review): Fix for qt6 + swap to docker-ci container

Signed-off-by: Josh <josh.t.richards@gmail.com>

* fix: add OPENSSL_ROOT_DIR

Signed-off-by: Josh <josh.t.richards@gmail.com>

* fix: use clang-tidy-diff.py

Signed-off-by: Josh <josh.t.richards@gmail.com>

* fix: path to clang-tidy-diff.py -> clang-tidy-diff-15.py

Signed-off-by: Josh <josh.t.richards@gmail.com>

* fix: try to fix git usage

Signed-off-by: Josh <josh.t.richards@gmail.com>

* fix: LD_LIBRARY_PATH workaround for python in clang-tidy-pr-comments

Signed-off-by: Josh <josh.t.richards@gmail.com>

* fix: bump back to 1.4.3 clang-tidy-pr-comments to avoid workarounds

Signed-off-by: Josh <josh.t.richards@gmail.com>

* fix: wrap up after debugging this

Signed-off-by: Josh <josh.t.richards@gmail.com>

---------

Signed-off-by: Josh <josh.t.richards@gmail.com>
2024-07-21 14:46:03 +08:00

39 lines
1.8 KiB
YAML

name: clang-tidy-review
on:
pull_request:
types: [opened, synchronize, reopened]
jobs:
clang-tidy:
runs-on: ubuntu-latest
container: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.6.3-2
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 2
- name: Prepare compile_commands.json
run: |
cmake -G Ninja -B build -DCMAKE_PREFIX_PATH=/opt/qt6.6.3 -DQT_MAJOR_VERSION=6 -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DBUILD_UPDATER=ON -DBUILD_TESTING=1 -DOPENSSL_ROOT_DIR=/usr/local/lib64
cd build && ninja
- name: Create results directory
run: |
mkdir clang-tidy-result
- name: Analyze
run: |
/usr/bin/git config --global --add safe.directory "$GITHUB_WORKSPACE"
/usr/bin/git diff -U0 HEAD^ | clang-tidy-diff-15.py -checks='-*,modernize-use-auto,modernize-use-using,modernize-use-nodiscard,modernize-use-nullptr,modernize-use-override,cppcoreguidelines-pro-type-static-cast-downcast' -p1 -path build -export-fixes clang-tidy-result/fixes.yml
- name: Run clang-tidy-pr-comments action
uses: platisd/clang-tidy-pr-comments@v1.4.3 # >1.4.3 switches to composite method w/ a forced python version and breaks things: https://github.com/actions/setup-python/issues/871
with:
# The GitHub token (or a personal access token)
github_token: ${{ secrets.GITHUB_TOKEN }}
# The path to the clang-tidy fixes generated previously
clang_tidy_fixes: clang-tidy-result/fixes.yml
# Optionally set to true if you want the Action to request
# changes in case warnings are found
request_changes: true
# Optionally set the number of comments per review
# to avoid GitHub API timeouts for heavily loaded
# pull requests
suggestions_per_comment: 10