Skip to content

Add clang tidy workflow #12

Add clang tidy workflow

Add clang tidy workflow #12

name: clang-tidy-review
on:
pull_request:
paths:
- '**.h'
- '**.cc'
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number }}
cancel-in-progress: true
jobs:
review:
runs-on: ubuntu-latest
steps:
- name: Checkout PR branch
uses: actions/checkout@v4
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Install LLVM and Clang
uses: KyleMayes/[email protected]
with:
version: "17.0.6"
- name: install lit
run: pip install lit
- name: Run clang-tidy
uses: ZedThree/[email protected]
id: review
with:
build_dir: build
apt_packages: cmake,libxml2,libxml2-dev,libtinfo-dev,zlib1g-dev,libzstd-dev,wget
split_workflow: true
config_file: .clang-tidy
cmake_command: >
cmake . -B build -DINSTALL_PYTHON=FALSE -DCMAKE_EXPORT_COMPILE_COMMANDS=ON || true &&
rm -rf build &&
set -x &&
wget https://github.com/mamba-org/micromamba-releases/releases/download/1.5.10-0/micromamba-linux-64 &&
mv ./micromamba-linux-64 ./micromamba &&
chmod a+x ./micromamba &&
export PATH="$PWD:$PATH" &&
apt-get remove -y gcc-13 &&
apt-get remove -y gfortran &&
apt-get autoremove -y &&
eval "$(micromamba shell hook -s posix)" &&
micromamba create -n clang-tidy-review -y --log-level warning -f $GITHUB_WORKSPACE/conda_env.yml &&
head -n 10 /github/home/micromamba/envs/clang-tidy-review/etc/conda/activate.d/activate-binutils_linux-64.sh &&
micromamba activate clang-tidy-review &&
bash set_conda_env_vars.sh &&
cmake . -B build -DINSTALL_PYTHON=FALSE -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
- name: Upload artifacts
uses: ZedThree/clang-tidy-review/[email protected]