cutter/.github/workflows/linter.yml
2021-12-21 13:39:25 +01:00

53 lines
1.2 KiB
YAML

name: "Linter"
on:
push:
branches:
- dev
- stable
pull_request:
branches:
- dev
- stable
jobs:
changes:
runs-on: ubuntu-latest
outputs:
clang-format: ${{ steps.filter.outputs.clang-format }}
steps:
- uses: actions/checkout@v2
- uses: dorny/paths-filter@v2
id: filter
with:
filters: |
clang-format:
- '**.cpp'
- '**.c'
- '**.h'
- '.github/workflows/linter.yml'
clang-format:
needs: changes
runs-on: ubuntu-20.04
if: ${{ needs.changes.outputs.clang-format == 'true' }}
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Install wget
run: sudo apt --assume-yes install wget
- name: Install automatic llvm (stable branch)
run: sudo bash -c "$(wget -O - https://apt.llvm.org/llvm.sh)"
- name: Install clang-format-11
run: sudo apt --assume-yes install clang-format-11
- name: Install gitpython
run: sudo pip install gitpython
- name: Run clang-format
run: |
find ./src -regex '.*\.\(cpp\|h\|c\)' -exec clang-format -style=file --dry-run --Werror {} \;