Igor Pecovnik 9b3054640b ci: predict which artifacts a PR needs rebuilt (advisory)
Adds a pull_request_target workflow that works out which (board, branch,
artifact) tuples a pull request would require the CI to rebuild, and posts it
as a single self-updating comment. Nothing is built or dispatched yet - this is
the display step; the plan.json it uploads is the input the build/repository
step will consume next.

Two stages, split on purpose:

  collect_facts.py reads the ground truth out of the tree - 403 boards with
  their family and KERNEL_TARGET, 86 family configs, the patch directories, and
  the artifact names from ARMBIAN_ARTIFACTS_TO_HANDLERS_DICT.

  predict.py narrows the changed paths onto the families and boards they touch
  (deterministic - this keeps the prompt small and the answer anchored), then
  asks Claude to turn that slice into a build plan. Patch directories are
  matched exactly, by naming convention (rockchip64-6.18 -> rockchip64), and
  through include files that declare them on behalf of the families sourcing
  them (sunxi-6.18 -> the 24 sun*i families). 64 of 70 kernel patch dirs and 18
  of 40 u-boot dirs resolve; the rest are reported as unattributed rather than
  quietly dropped.

Everything the model returns is validated against the real vocabulary before it
is shown: unknown boards, artifacts outside the registry, and branches a board
does not declare in KERNEL_TARGET are dropped and listed as warnings.

Security: pull_request_target carries secrets, so the workflow checks out the
base branch only and never executes pull-request code. The changed-file list
and PR title reach the model as data, and the prompt says so.

Uses the existing ANTHROPIC_API_KEY secret; without it the job explains itself
and exits green instead of failing every PR.

Signed-off-by: Igor Pecovnik <igor@armbian.com>
2026-08-19 08:23:52 +02:00
2026-02-09 00:28:39 +01:00
2014-10-08 10:14:29 +02:00
2026-01-31 09:32:23 +01:00
2026-06-05 10:23:42 +02:00

Armbian logo

Purpose of This Repository

The Armbian Linux Build Framework creates customizable OS images based on Debian or Ubuntu for single-board computers (SBCs) and embedded devices.

It builds a complete Linux system including kernel, bootloader, and root filesystem, giving you control over versions, configuration, firmware, device trees, and system optimizations.

The framework supports native, cross, and containerized builds for multiple architectures (x86_64, aarch64, armhf, riscv64) and is suitable for development, testing, production, or automation.

Looking for prebuilt images? Use Armbian Imager — the easiest way to download and flash Armbian to your SD card or USB drive. Available for Linux, macOS, and Windows.

Quick Start

git clone https://github.com/armbian/build
cd build
./compile.sh

Build demonstration

Build Host Requirements

Hardware

  • RAM: ≥8GB (less with KERNEL_BTF=no)
  • Disk: ~50GB free space
  • Architecture: x86_64, aarch64, or riscv64

Operating System

  • Native builds: Armbian or Ubuntu 24.04 (Noble)
  • Containerized: Any Docker-capable Linux
  • Windows: WSL2 with Armbian/Ubuntu 24.04

Software

  • Superuser privileges (sudo or root)
  • Up-to-date system (outdated Docker or other tools can cause failures)

Resources

  • Documentation — Comprehensive guides for building, configuring, and customizing
  • Website — News, features, and board information
  • Blog — Development updates and technical articles
  • Forums — Community support and discussions

Contributing

We welcome contributions! See CONTRIBUTING.md for guidelines on reporting issues, submitting changes, and contributing code.

Support

Community Forums

Get help from users and contributors on troubleshooting, configuration, and development. 👉 forum.armbian.com

Real-time Chat

Join discussions with developers and community members on IRC or Discord. 👉 Community Chat

Paid Consultation

For commercial projects, guaranteed response times, or advanced needs, paid support is available from Armbian maintainers. 👉 Contact us

Contributors

Thank you to everyone who has contributed to Armbian!

Contributors

Armbian Partners

Our partnership program supports Armbian's development and community. Learn more about our Partners.

S
Description
Armbian Linux build framework generates custom Debian or Ubuntu image for x86, aarch64, riscv64 & armhf
Readme GPL-2.0
1,021 MiB
Languages
Shell 67.2%
Python 11.8%
GSC 8.6%
Batchfile 4.4%
C 3.4%
Other 4.5%