summaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
authorDrashna Jael're <drashna@live.com>2021-12-07 09:27:44 -0800
committerDrashna Jael're <drashna@live.com>2021-12-07 09:27:44 -0800
commit7c18b1c9d3d968ded45e072af3483547c3ec7859 (patch)
treeed7c8a4176033046eacff21228364290b44fcfdb /.github
parent43002bdf77ab0f48af6b04e87edcc37f7cb7b905 (diff)
parent6d0a62920410f50d7f6707960ca1ca0c8fd1d1fa (diff)
Merge commit '6d0a62920410f50d7f6707960ca1ca0c8fd1d1fa' into firmware21
Diffstat (limited to '.github')
-rw-r--r--.github/labeler.yml1
-rw-r--r--.github/workflows/cli.yml3
-rw-r--r--.github/workflows/format.yaml23
-rw-r--r--.github/workflows/format_push.yaml49
-rw-r--r--.github/workflows/unit_test.yml30
5 files changed, 96 insertions, 10 deletions
diff --git a/.github/labeler.yml b/.github/labeler.yml
index 53921f7f95..41b2475f67 100644
--- a/.github/labeler.yml
+++ b/.github/labeler.yml
@@ -22,7 +22,6 @@ keymap:
via:
- keyboards/**/keymaps/via/*
cli:
- - bin/qmk
- requirements.txt
- lib/python/**/*
python:
diff --git a/.github/workflows/cli.yml b/.github/workflows/cli.yml
index 7a8dc8540f..2ea810958b 100644
--- a/.github/workflows/cli.yml
+++ b/.github/workflows/cli.yml
@@ -4,11 +4,10 @@ on:
push:
branches:
- master
- - future
+ - develop
pull_request:
paths:
- 'lib/python/**'
- - 'bin/qmk'
- 'requirements.txt'
- '.github/workflows/cli.yml'
diff --git a/.github/workflows/format.yaml b/.github/workflows/format.yaml
index 0bb8701068..f1525526ce 100644
--- a/.github/workflows/format.yaml
+++ b/.github/workflows/format.yaml
@@ -19,7 +19,9 @@ jobs:
container: qmkfm/qmk_cli
steps:
- - uses: rlespinasse/github-slug-action@v3.x
+ - name: Install dependencies
+ run: |
+ apt-get update && apt-get install -y dos2unix
- uses: actions/checkout@v2
with:
@@ -31,12 +33,19 @@ jobs:
output: ' '
fileOutput: ' '
- - name: Run qmk format-c and qmk format-python
+ - name: Run qmk formatters
shell: 'bash {0}'
run: |
- qmk format-c --core-only -n $(< ~/files.txt)
- format_c_exit=$?
- qmk format-python -n
- format_python_exit=$?
+ 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
- exit $((format_c_exit + format_python_exit))
+ - 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)"
diff --git a/.github/workflows/format_push.yaml b/.github/workflows/format_push.yaml
new file mode 100644
index 0000000000..b79130f17a
--- /dev/null
+++ b/.github/workflows/format_push.yaml
@@ -0,0 +1,49 @@
+name: Lint Format
+
+on:
+ push:
+ branches:
+ - master
+ - develop
+
+jobs:
+ lint:
+ runs-on: ubuntu-latest
+
+ container: qmkfm/qmk_cli
+
+ steps:
+ - name: Install dependencies
+ run: |
+ apt-get update && apt-get install -y dos2unix
+
+ - uses: actions/checkout@v2
+ with:
+ fetch-depth: 0
+
+ - name: Run qmk formatters
+ shell: 'bash {0}'
+ run: |
+ qmk format-c -a
+ qmk format-python -a
+ qmk format-text -a
+ git diff
+
+ - uses: rlespinasse/github-slug-action@v3.x
+
+ - name: Become QMK Bot
+ run: |
+ git config user.name 'QMK Bot'
+ git config user.email 'hello@qmk.fm'
+
+ - name: Create Pull Request
+ uses: peter-evans/create-pull-request@v3
+ if: ${{ github.repository == 'qmk/qmk_firmware'}}
+ with:
+ token: ${{ secrets.QMK_BOT_TOKEN }}
+ delete-branch: true
+ branch: bugfix/format_${{ env.GITHUB_REF_SLUG }}
+ author: QMK Bot <hello@qmk.fm>
+ committer: QMK Bot <hello@qmk.fm>
+ commit-message: Format code according to conventions
+ title: '[CI] Format code according to conventions'
diff --git a/.github/workflows/unit_test.yml b/.github/workflows/unit_test.yml
new file mode 100644
index 0000000000..26bcb2f511
--- /dev/null
+++ b/.github/workflows/unit_test.yml
@@ -0,0 +1,30 @@
+name: Unit Tests
+
+on:
+ push:
+ branches:
+ - master
+ - develop
+ pull_request:
+ paths:
+ - 'builddefs/**'
+ - 'quantum/**'
+ - 'platforms/**'
+ - 'tmk_core/**'
+ - 'tests/**'
+ - '*.mk'
+ - 'Makefile'
+ - '.github/workflows/unit_test.yml'
+
+jobs:
+ test:
+ runs-on: ubuntu-latest
+
+ container: qmkfm/base_container
+
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: recursive
+ - name: Run tests
+ run: make test:all