summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Brassel <nick@tzarc.org>2023-03-15 08:31:10 +1100
committerGitHub <noreply@github.com>2023-03-15 08:31:10 +1100
commite62fc866dbac6b558b328be14e8096835c3aadc7 (patch)
tree2cc074c7d9b3b4f66fb25ccd1a617df95255d748
parentc91296f001a802ff34f23b71c2e673da4dca2f0b (diff)
Let's use workflows to parallelise the builds. (#20120)
* Let's use workflows to parallelise the builds. * Nofail if files aren't present. * Formatting.
-rw-r--r--.github/workflows/ci_builds.yml19
-rwxr-xr-xlib/python/qmk/cli/mass_compile.py2
2 files changed, 15 insertions, 6 deletions
diff --git a/.github/workflows/ci_builds.yml b/.github/workflows/ci_builds.yml
index 64c7678d53..e2bbd93497 100644
--- a/.github/workflows/ci_builds.yml
+++ b/.github/workflows/ci_builds.yml
@@ -19,9 +19,8 @@ jobs:
strategy:
matrix:
- keymap:
- - default
- - via
+ keymap: [default, via]
+ keyboard_folder: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z]
container: qmkfm/qmk_cli
@@ -36,5 +35,15 @@ jobs:
- name: Install dependencies
run: pip3 install -r requirements.txt
- - name: Run `qmk mass-compile` (keymap ${{ matrix.keymap }})
- run: qmk mass-compile -j $(nproc 2>/dev/null || sysctl -n hw.ncpu 2>/dev/null || getconf _NPROCESSORS_ONLN 2>/dev/null) -km ${{ matrix.keymap }}
+ - name: Run `qmk mass-compile` (keyboards ${{ matrix.keyboard_folder }}*, keymap ${{ matrix.keymap }})
+ run: qmk mass-compile -j $(nproc 2>/dev/null || sysctl -n hw.ncpu 2>/dev/null || getconf _NPROCESSORS_ONLN 2>/dev/null) -km ${{ matrix.keymap }} -f 'keyboard_folder=${{ matrix.keyboard_folder }}*'
+
+ - name: 'Upload binaries'
+ uses: actions/upload-artifact@v3
+ with:
+ name: binaries-${{ matrix.keyboard_folder }}-${{ matrix.keymap }}
+ if-no-files-found: ignore
+ path: |
+ *.bin
+ *.hex
+ *.uf2
diff --git a/lib/python/qmk/cli/mass_compile.py b/lib/python/qmk/cli/mass_compile.py
index 2821a60c87..810350b954 100755
--- a/lib/python/qmk/cli/mass_compile.py
+++ b/lib/python/qmk/cli/mass_compile.py
@@ -106,7 +106,7 @@ def mass_compile(cli):
def _make_filter(k, v):
expr = fnmatch.translate(v)
- rule = re.compile(expr, re.IGNORECASE)
+ rule = re.compile(f'^{expr}$', re.IGNORECASE)
def f(e):
lhs = e[2].get(k)