summary refs log tree commit diff
path: root/.github/workflows
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/regen.yml33
-rw-r--r--.github/workflows/regen_push.yml43
2 files changed, 76 insertions, 0 deletions
diff --git a/.github/workflows/regen.yml b/.github/workflows/regen.yml
new file mode 100644
index 0000000000..ae25bc095e
--- /dev/null
+++ b/.github/workflows/regen.yml
@@ -0,0 +1,33 @@
+name: PR Regenerate Files
+
+permissions:
+  contents: read
+
+on:
+  pull_request:
+    paths:
+    - 'data/constants/**'
+    - 'lib/python/**'
+
+jobs:
+  regen:
+    runs-on: ubuntu-latest
+
+    container: qmkfm/qmk_cli
+
+    steps:
+    - uses: actions/checkout@v3
+
+    - name: Run qmk generators
+      run: |
+        util/regen.sh
+        git diff
+
+    - name: Fail when regeneration required
+      run: |
+        git diff
+        for file in $(git diff --name-only); do
+          echo "File '${file}' Requires Regeneration"
+          echo "::error file=${file}::Requires Regeneration"
+        done
+        test -z "$(git diff --name-only)"
diff --git a/.github/workflows/regen_push.yml b/.github/workflows/regen_push.yml
new file mode 100644
index 0000000000..fb3314f319
--- /dev/null
+++ b/.github/workflows/regen_push.yml
@@ -0,0 +1,43 @@
+name: Regenerate Files
+
+permissions:
+  contents: write
+
+on:
+  push:
+    branches:
+    - master
+    - develop
+
+jobs:
+  regen:
+    runs-on: ubuntu-latest
+
+    container: qmkfm/qmk_cli
+
+    steps:
+    - uses: actions/checkout@v3
+
+    - name: Run qmk generators
+      run: |
+        util/regen.sh
+        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@v4
+      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: Regenerate Files
+        title: '[CI] Regenerate Files'