name: cpp_lint

# lint on c/cpp changes or workflow changes
on:
  push:
    paths:
      - 'lib/**.[ch]'
      - 'lib/**.cpp'
      - 'src/**.[ch]'
      - 'src/**.cpp'
      - '**/CMakeLists.txt'
      - 'cmake/Modules/**'
      - 'util/ci/**'
      - '.github/workflows/**.yml'
  pull_request:
    paths:
      - 'lib/**.[ch]'
      - 'lib/**.cpp'
      - 'src/**.[ch]'
      - 'src/**.cpp'
      - '**/CMakeLists.txt'
      - 'cmake/Modules/**'
      - 'util/ci/**'
      - '.github/workflows/**.yml'

jobs:

#  clang_format:
#    runs-on: ubuntu-20.04
#    steps:
#      - uses: actions/checkout@v3
#      - name: Install clang-format
#        run: |
#          sudo apt-get update
#          sudo apt-get install -y clang-format-9
#
#      - name: Run clang-format
#        run: |
#          source ./util/ci/clang-format.sh
#          check_format
#        env:
#          CLANG_FORMAT: clang-format-9

  clang_tidy:
    runs-on: ubuntu-20.04
    steps:
    - uses: actions/checkout@v3
    - name: Install deps
      run: |
        source ./util/ci/common.sh
        install_linux_deps clang-tidy-9

    - name: Run clang-tidy
      run: |
        ./util/ci/clang-tidy.sh