2023-12-02 14:04:43 +01:00
|
|
|
---
|
|
|
|
name: clang-tidy
|
|
|
|
|
|
|
|
on:
|
|
|
|
pull_request:
|
|
|
|
|
|
|
|
concurrency:
|
|
|
|
group: clang-tidy-${{ github.ref }}
|
|
|
|
cancel-in-progress: true
|
|
|
|
|
|
|
|
jobs:
|
2024-03-30 11:25:11 +01:00
|
|
|
review:
|
2024-10-10 02:17:29 +02:00
|
|
|
if: ${{ !contains(github.event.pull_request.labels.*.name, 'skip-clang-tidy') }}
|
2023-12-02 14:04:43 +01:00
|
|
|
name: "clang-tidy ${{ matrix.os }}, Qt ${{ matrix.qt-version }})"
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
strategy:
|
|
|
|
matrix:
|
|
|
|
include:
|
2024-03-30 11:25:11 +01:00
|
|
|
# Ubuntu 22.04, Qt 6.6
|
2023-12-02 14:04:43 +01:00
|
|
|
- os: ubuntu-22.04
|
2024-03-30 11:25:11 +01:00
|
|
|
qt-version: 6.6.2
|
2023-12-02 14:04:43 +01:00
|
|
|
|
|
|
|
fail-fast: false
|
|
|
|
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
with:
|
|
|
|
submodules: recursive
|
|
|
|
fetch-depth: 0 # allows for tags access
|
|
|
|
|
|
|
|
- name: Install Qt6
|
|
|
|
if: startsWith(matrix.qt-version, '6.')
|
2024-11-17 13:05:55 +01:00
|
|
|
uses: jurplel/install-qt-action@v4.1.1
|
2023-12-02 14:04:43 +01:00
|
|
|
with:
|
|
|
|
cache: true
|
|
|
|
cache-key-prefix: ${{ runner.os }}-QtCache-${{ matrix.qt-version }}-v2
|
|
|
|
modules: qt5compat qtimageformats
|
|
|
|
version: ${{ matrix.qt-version }}
|
2024-03-30 11:25:11 +01:00
|
|
|
dir: ${{ github.workspace }}/.qtinstall
|
|
|
|
set-env: false
|
2023-12-02 14:04:43 +01:00
|
|
|
|
|
|
|
- name: clang-tidy review
|
|
|
|
timeout-minutes: 20
|
2024-11-09 13:46:22 +01:00
|
|
|
uses: ZedThree/clang-tidy-review@v0.20.0
|
2023-12-02 14:04:43 +01:00
|
|
|
with:
|
|
|
|
build_dir: build-clang-tidy
|
|
|
|
config_file: ".clang-tidy"
|
|
|
|
split_workflow: true
|
2024-09-01 11:22:54 +02:00
|
|
|
exclude: "lib/*,tools/crash-handler/*,mocks/*"
|
2023-12-02 14:04:43 +01:00
|
|
|
cmake_command: >-
|
2024-03-30 11:25:11 +01:00
|
|
|
./.CI/setup-clang-tidy.sh
|
2023-12-02 14:04:43 +01:00
|
|
|
apt_packages: >-
|
|
|
|
libsecret-1-dev,
|
|
|
|
libboost-dev, libboost-system-dev, libboost-filesystem-dev,
|
|
|
|
libssl-dev,
|
|
|
|
rapidjson-dev,
|
2024-03-30 11:25:11 +01:00
|
|
|
libbenchmark-dev,
|
|
|
|
build-essential,
|
|
|
|
libgl1-mesa-dev, libgstreamer-gl1.0-0, libpulse-dev,
|
|
|
|
libxcb-glx0, libxcb-icccm4, libxcb-image0, libxcb-keysyms1, libxcb-randr0,
|
|
|
|
libxcb-render-util0, libxcb-render0, libxcb-shape0, libxcb-shm0, libxcb-sync1,
|
|
|
|
libxcb-util1, libxcb-xfixes0, libxcb-xinerama0, libxcb1, libxkbcommon-dev,
|
|
|
|
libxkbcommon-x11-0, libxcb-xkb-dev, libxcb-cursor0
|
2023-12-02 14:04:43 +01:00
|
|
|
|
|
|
|
- name: clang-tidy-review upload
|
2024-11-09 13:46:22 +01:00
|
|
|
uses: ZedThree/clang-tidy-review/upload@v0.20.0
|