Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
17 commits
Select commit Hold shift + click to select a range
7cbfc32
build: add rt-defconfig; ADR 0030 -- shrinking the wrapper Makefile t…
mcfbytes Sep 11, 2026
f63dd11
initramfs: stage 1 becomes a package of the main build (ADR 0030 Phas…
mcfbytes Sep 11, 2026
c383b3e
initramfs: record the Phase B verification; fix ci-tests' kernel-conf…
mcfbytes Sep 11, 2026
97098b5
rt: the PREEMPT_RT variant becomes package/linux-rt in the main build…
mcfbytes Sep 11, 2026
4e7ff01
config: profiles + committed defconfigs + a thin Makefile (ADR 0030 P…
mcfbytes Sep 11, 2026
e3c8474
ci+docs: one-path build action, docs follow the new layout (ADR 0030 …
mcfbytes Sep 11, 2026
62c736d
release: one script from a built output/ to a verified dist/ (release…
mcfbytes Sep 11, 2026
c4c1c3f
initramfs: make the kernel a full dependant of package/mister-initramfs
mcfbytes Sep 11, 2026
1817aa0
Merge branch 'feat/vanilla-buildroot' into feat/vanilla-buildroot-def…
mcfbytes Sep 11, 2026
3475c53
renovate-hash-sync: restore the commit-message heredoc terminator
mcfbytes Sep 11, 2026
4118964
Merge branch 'feat/vanilla-buildroot-defconfigs' into feat/vanilla-bu…
mcfbytes Sep 11, 2026
c89a865
release: glob the azcopy assets instead of counting ls output (SC2012)
mcfbytes Sep 11, 2026
ccb947a
release: keep the manifests step id the summary step references (acti…
mcfbytes Sep 11, 2026
0e56dd2
test-initramfs: add --kernel rt, the 32-bit QEMU leg for the RT serie…
mcfbytes Sep 11, 2026
d6a2689
Merge pull request #170 from mcfbytes/fix/qemu-rt-exfat-symlink-leg
mcfbytes Sep 12, 2026
d87a284
Merge pull request #169 from mcfbytes/feat/vanilla-buildroot-release
mcfbytes Sep 12, 2026
ff3a498
Merge pull request #167 from mcfbytes/feat/vanilla-buildroot-defconfigs
mcfbytes Sep 12, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 2 additions & 4 deletions .github/actions/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,15 @@

| Action | Owns | Called by | Notes |
|--------|------|-----------|-------|
| **buildroot-build** | Runner prep (disk, apt, five caches) + `make all` (main) or `make <variant>` (kernel-only). Outputs: `output/images/` or `output-<name>/images/` + legal-info on demand. | build.yml, release.yml, reproducibility.yml | Single source of truth for the Buildroot recipe across three workflows. main's cache key strings are byte-identical to before the variant input existed; existing cache entries keep hitting. Kernel variants derive their own cache namespaces from fragment existence. |
| **kernel-leg** | One kernel-variant matrix leg: build via buildroot-build, render job summary, stage artifact (zImage_dtb + .config + modules tar + legal-info), upload for `build` to merge. | build.yml (build-kernel matrix), release.yml (build-kernel matrix) | Moves the 72-identical shared lines from build.yml and release.yml's own copies. Inputs: kernel, full-legal-info, release-context. |
| **merge-kernel-modules** | Two phases: (1) phase=download: download kernel-leg artifacts, populate work/extra-modules-overlay/ (runs BEFORE buildroot-build); (2) phase=verify: assert every kver merged into output/target/ (runs AFTER buildroot-build). | build.yml, release.yml | Phase-gated input enforces sequence discipline and prevents silent overlay misses. Called twice per workflow (download then verify). |
| **buildroot-build** | Runner prep (disk, apt, caches) + `make all`. Outputs: `output/images/` (linux.img, zImage_dtb, zImage_dtb-rt, mister-initramfs.cpio) + legal-info on demand. Since ADR 0030 Phase C the RT kernel and the stage-1 initramfs are packages of the one build, so there is no kernel-only variant mode any more (the `variant` input errors on anything but `main`). | build.yml, release.yml, reproducibility.yml | Single source of truth for the Buildroot recipe across three workflows. main's cache key strings are byte-identical to before the variant input existed; existing cache entries keep hitting. Kernel variants derive their own cache namespaces from fragment existence. |
| **verify-image** | Run parity suite (P3.12) + ABI/SONAME checker (P2.2) against built image. Uploads results artifact on every run (`if: always()`). | build.yml, release.yml | Input: skip-qemu-system (default "true" — byte-identical to old hard-coded "1"). Both workflows used to carry identical copies. |

## Rule: When to Add a Fifth Action

**Only add a new composite action when ALL of these hold:**
1. The work is genuinely self-contained (no dependencies within another action's phase).
2. Its failure modes are independent (a failure does NOT require coordination with an existing action's state).
3. No workflow sequence rule applies (if two actions must run in order with state between them, use a phase input instead — see `merge-kernel-modules`).
3. No workflow sequence rule applies (if two actions must run in order with state between them, use a phase input instead).

**Otherwise, extend an existing action via inputs.**

Expand Down
561 changes: 67 additions & 494 deletions .github/actions/buildroot-build/action.yml

Large diffs are not rendered by default.

258 changes: 0 additions & 258 deletions .github/actions/kernel-leg/action.yml

This file was deleted.

Loading
Loading