Hello! I'm looking for a convenient wrapper of standard Debian packaging
toolchain in order to automatize the deployment process. We use Ubuntu
and Debian, and the most part of code is written in C++, therefore we
need to compile and build binary debs. Currently our infrastructure
consists of:
1. Gitlab;
2. Isolated build environment inside Docker containers (where we
usually do `git clone && mk-build-deps && debuild`);
3. Aptly;
4. Self-written Python scripts linking all these components;
At the moment we're trying to collect more information about existing
packaging systems. Our self-written scripts no longer meet our needs.
Now we have faced a choice: either we move our deployment process into
third-party packaging system (if we find the good one), or we get
involved into the development of own full-featured system.
I would like to put an emphasis on the most in-demand features:
1. Lightweight isolated environment (hardware virtualization is not
suitable);
2. Git support;
3. RESTful API (in order to provide clear integration with git hooks
that will launch build process);
4. Web interface;
5. Support for a different build backends (Debian default toolchain |
CPack);
6. Binary package repository integration;
7. Package version control (support for builds from different branches,
build number incrementation, keep changelog consistent, etc.);
8. Email notification;
9. Privacy (ability to deploy the system on the own facilities);
It seems like none of the well-known open-source solutions (Open Build
Service, Launchpad, Travis CI) meets this requirements. Please share how
exactly you build deb packages from your projects and what tools do you
use? Any help will be appreciated.
Kind regards,
Vitaly Isaev