Unify upstream packaging pipelines (OBS, launchpad, COPR, ...)
Different CZ.NIC projects provide upstream packaging using different systems:
- Knot DNS is using a mix of community build systems (COPR for Fedora/EPEL, launchpad for Ubuntu) and a custom packaging box for Debian
- Knot Resolver is using Open Build Service (OBS) community build system to build packages for all supported distros
- BIRD is relying on downstream packaging with the exception of launchpad for Ubuntu - it'd benefit from shared upstream packaging
We should try to converge towards a common upstream packaging pipeline eventually in order to focus automation efforts on a single shared pipeline as opposed to each project duplicating effort on a custom packaging solution.
Both approaches have their advantages and disadvantages but we need to decide in which direction we want to converge sooner or later.
It's worth nothing there is also the third path of using (custom) containers-based solution in order to be able to reuse existing CI code which relies on containers. apkg
makes this approach viable by providing necessary distro-specific glue but many problems are bound to arise in a custom pipeline that are already addressed in community build systems.
This topic is open for discussion as we experiment with individual options.