Added dockerfilE/container
Some checks failed
Build QMK Firmware with Docker / build (draculad, draculad) (push) Waiting to run
Build QMK Firmware with Docker / build (iris, keebio/iris/rev8) (push) Waiting to run
Build QMK Firmware with Docker / build (scottogame, handwired/scottokeebs/scottogame) (push) Waiting to run
Build QMK Firmware with Docker / build (sweep, ferris/sweep) (push) Waiting to run
Build QMK Firmware with Docker / build (swoop, bluebell/swoop) (push) Waiting to run
Build QMK Firmware with Docker / release (push) Blocked by required conditions
Compile my Keebs / lint-and-compile (push) Failing after 1s

This commit is contained in:
2025-07-14 23:54:16 -05:00
parent 650cdea752
commit d6d33e5f3e
5 changed files with 360 additions and 1 deletions

80
.github/workflows/docker-build.yml vendored Normal file
View File

@@ -0,0 +1,80 @@
name: Build QMK Firmware with Docker
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
keyboard: [draculad, iris, scottogame, sweep, swoop]
include:
- keyboard: draculad
qmk_path: draculad
- keyboard: iris
qmk_path: keebio/iris/rev8
- keyboard: scottogame
qmk_path: handwired/scottokeebs/scottogame
- keyboard: sweep
qmk_path: ferris/sweep
- keyboard: swoop
qmk_path: bluebell/swoop
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
submodules: recursive
- name: Build Docker image
run: docker build -t qmk-builder .
- name: Build firmware
run: |
docker run --rm \
-v "${{ github.workspace }}:/workspace" \
-w /workspace \
-e USER=dgvigil \
qmk-builder \
bash -c "
cd /qmk_firmware
qmk compile -kb ${{ matrix.qmk_path }} -km dgvigil
"
- name: Upload firmware artifacts
uses: actions/upload-artifact@v4
with:
name: firmware-${{ matrix.keyboard }}
path: qmk_firmware/*.hex
retention-days: 30
- name: Upload UF2 files
uses: actions/upload-artifact@v4
with:
name: firmware-${{ matrix.keyboard }}-uf2
path: qmk_firmware/*.uf2
retention-days: 30
release:
needs: build
runs-on: ubuntu-latest
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Download all artifacts
uses: actions/download-artifact@v4
with:
path: artifacts
- name: Create release
uses: marvinpinto/action-automatic-releases@latest
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
automatic_release_tag: "${{ github.sha }}"
title: "QMK Firmware Build - ${{ github.sha }}"
prerelease: false
files: |
artifacts/**/*.hex
artifacts/**/*.uf2