armbian-build/tools
Igor Pecovnik 09ce370e55 feat: implement parallel repository management workflow
This commit implements a complete parallel repository management system
that allows building and publishing Debian repositories in parallel,
significantly reducing build time for multiple distributions.

- `update-main`: Builds common/main component once for all releases
- `update -R <release>`: Builds release-specific components in isolated DBs
- `merge`: Combines common + release-specific components into final repos

- Isolated databases (aptly-isolated-<release>) avoid locking during parallel builds
- Common component built once, not duplicated per release
- Release-specific components (utils, desktop) built independently
- Final merge combines all components with proper GPG signing

- Fixed GPG signing to target top-level Release files (dists/{release}/Release)
- Pool cleanup before publishing avoids "file already exists" errors
- Smart package import skips duplicates during merge
- Proper handling of empty repositories and missing components
- Improved error handling and logging throughout

1. update-main: Build common component (once)
2. update -R <release>: Parallel workers build release-specific components
3. merge: Combine all components and publish with GPG signatures

This enables GitHub Actions to run multiple release builders in parallel,
reducing total repository build time from hours to minutes.

Signed-off-by: Igor Pecovnik <igor@armbian.com>
2026-01-11 00:37:46 +01:00
..
dashboards pipeline: inventory all board vars; add not-eos-with-video; introduce TARGETS_FILTER_INCLUDE 2023-07-26 15:15:02 +02:00
repository feat: implement parallel repository management workflow 2026-01-11 00:37:46 +01:00
gen-series.sh consolidate rk322x and rockchip 32 bit families 2023-12-26 16:45:30 +01:00
mk_format_patch mk_format_patch: fix shellcheck SC2045 (error) 2024-08-02 17:21:36 +02:00
README.md add a hand command line tool (#3909) 2022-06-20 14:03:11 +03:00
unifying_configs add a hand command line tool (#3909) 2022-06-20 14:03:11 +03:00

tool usage
mk_format_patch facilitate the creation of a series of non-numbered patches
unifying_configs helps to unify kernel configs (kernel 5.x only)