Igor Pecovnik 09ce370e55
Some checks failed
Announce merge / announcepush (push) Has been cancelled
Help forks / 📢 Run repository dispatch on fork (push) Has been cancelled
Mirror to Codeberg / codeberg (push) Has been cancelled
Scan security / Scorecards analysis (push) Has been cancelled
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
..
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)