summaryrefslogtreecommitdiffstats
path: root/.github/workflows/format.yml
diff options
context:
space:
mode:
authorJoel Challis <git@zvecr.com>2022-04-03 13:18:28 +0100
committerGitHub <noreply@github.com>2022-04-03 13:18:28 +0100
commit27ae37d626ca534be196bf4a0bdffa8e03a5a159 (patch)
tree7fe8c0fad8360c6b01c2aa2ec773dd68b0a71e20 /.github/workflows/format.yml
parent61bd61347ab1739524f375871407d54436f4c68e (diff)
Align action workflow filenames (#16776)
Diffstat (limited to '.github/workflows/format.yml')
-rw-r--r--.github/workflows/format.yml51
1 files changed, 51 insertions, 0 deletions
diff --git a/.github/workflows/format.yml b/.github/workflows/format.yml
new file mode 100644
index 0000000000..ba0a86aa78
--- /dev/null
+++ b/.github/workflows/format.yml
@@ -0,0 +1,51 @@
+name: PR Lint Format
+
+on:
+ pull_request:
+ paths:
+ - 'drivers/**'
+ - 'lib/arm_atsam/**'
+ - 'lib/lib8tion/**'
+ - 'lib/python/**'
+ - 'platforms/**'
+ - 'quantum/**'
+ - 'tests/**'
+ - 'tmk_core/**'
+
+jobs:
+ lint:
+ runs-on: ubuntu-latest
+
+ container: qmkfm/qmk_cli
+
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ fetch-depth: 0
+
+ - name: Install dependencies
+ run: |
+ pip3 install -r requirements-dev.txt
+
+ - uses: trilom/file-changes-action@v1.2.4
+ id: file_changes
+ with:
+ output: ' '
+ fileOutput: ' '
+
+ - name: Run qmk formatters
+ shell: 'bash {0}'
+ run: |
+ cat ~/files_added.txt ~/files_modified.txt > ~/files_changed.txt
+ qmk format-c --core-only $(< ~/files_changed.txt) || true
+ qmk format-python $(< ~/files_changed.txt) || true
+ qmk format-text $(< ~/files_changed.txt) || true
+
+ - name: Fail when formatting required
+ run: |
+ git diff
+ for file in $(git diff --name-only); do
+ echo "File '${file}' Requires Formatting"
+ echo "::error file=${file}::Requires Formatting"
+ done
+ test -z "$(git diff --name-only)"