Skip to content

Conversation

@patcoll
Copy link
Owner

@patcoll patcoll commented Jan 25, 2026

Summary

  • Groups keyboards into batches of 10 in the CI matrix instead of one job per keyboard
  • Reduces job overhead and parallelism costs
  • Artifacts are now uploaded per-batch (firmware-batch-N)

Test plan

  • Verify matrix job outputs batched structure
  • Verify build jobs compile all keyboards in their batch
  • Verify firmware artifacts are uploaded correctly

Reduces job overhead by building multiple keyboards per CI job instead
of spawning a separate job for each keyboard.
- Continue building remaining keyboards if one fails
- Use if: always() on artifact upload step
- Track failures and report at end of batch
- Downloads all firmware-batch-* artifacts
- Merges into single 'firmware' artifact with all files
- Deletes intermediate batch artifacts
- collect job outputs list of firmware filenames
- upload-individual job uses matrix to upload each file separately
- Each artifact named after the firmware file (without extension)
@patcoll patcoll merged commit 8b81bc0 into main Jan 25, 2026
43 of 49 checks passed
@patcoll patcoll deleted the batch-keyboard-builds branch January 25, 2026 20:56
@patcoll patcoll changed the title Batch keyboard builds into groups of 10 per job Batch keyboard builds into groups of 16 per job Jan 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants