summaryrefslogtreecommitdiff
path: root/.github/workflows
diff options
context:
space:
mode:
authorRiku Isokoski <riksu9000@gmail.com>2022-08-16 16:35:59 +0300
committerJF <JF002@users.noreply.github.com>2022-10-10 17:52:36 +0200
commit73918ce8af763cfe8cbdec0336c97931724c6b63 (patch)
tree646ae2de86a692a46f34f64fb07f02fbc0786bdc /.github/workflows
parent957f7d2ec3dbbca562ed1ada085061676f804893 (diff)
Add clang-tidy check to display warnings on GitHub
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/format.yml38
1 files changed, 35 insertions, 3 deletions
diff --git a/.github/workflows/format.yml b/.github/workflows/format.yml
index 714c60bf..7e1552cb 100644
--- a/.github/workflows/format.yml
+++ b/.github/workflows/format.yml
@@ -17,9 +17,8 @@ jobs:
with:
fetch-depth: 1000
- - name: Configure git
- run: |
- git fetch origin "$GITHUB_BASE_REF":"$GITHUB_BASE_REF" --depth=1000
+ - name: Fetch base branch
+ run: git fetch origin "$GITHUB_BASE_REF":"$GITHUB_BASE_REF"
- name: Install clang-format
run: |
@@ -35,3 +34,36 @@ jobs:
with:
name: Patches
path: ./*.patch
+ test-clang-tidy:
+ runs-on: ubuntu-latest
+ container:
+ image: infinitime/infinitime-build
+ steps:
+ # This workaround fixes the error "unsafe repository (REPO is owned by someone else)".
+ # See https://github.com/actions/checkout/issues/760 and https://github.com/actions/checkout/issues/766
+ # The fix in "actions/checkout@v2" was not sufficient as the build process also uses git (to get the current
+ # commit hash, for example).
+ - name: Workaround permission issues
+ run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
+ - name: Checkout source files
+ uses: actions/checkout@v3
+ with:
+ submodules: recursive
+ fetch-depth: 1000
+ - name: Fetch base branch
+ run: git fetch origin "$GITHUB_BASE_REF":"$GITHUB_BASE_REF"
+ - name: Install clang-tidy
+ run: |
+ apt-get update
+ apt-get -y install clang-tidy-12
+ - name: Prepare environment
+ shell: bash
+ env:
+ SOURCES_DIR: .
+ run: |
+ . docker/build.sh
+ GetGcc
+ GetNrfSdk
+ GetMcuBoot
+ CmakeGenerate
+ - run: tests/test-tidy.sh