Код производит некоторые действия, требуемые для автоматической сборки из Jenkins:
- генерит версию пакета на основе коммита
- создаёт Changelog из шаблона
- копирует SSH ключ для доступа во вторичные закрытые репозитории
- запускает pdebuild для сборки deb пакетов
- публикует deb пакеты в репозиторий
Основная идея — всё, что делается здесь, можно пропустить и запустить сборку deb пакета вручную (например у себя локально) с помощью dpkg-buildpackage
Через окружение должны быть переданы переменные:
aptly_prefix
— префикс репозиторияaptly_distribution
— дистрибутив (deb https://repo/${aptly_prefix} ${aptly_distribution} main
)BUILD_NUMBER
— выставляется Jenkins'омgit_ssh_key
— путь к ключу SSH для доступа к дополнительным репозиториям
В системе должен быть установлен pbuilder
В директории ./debian
должны лежать необходимые для сборки deb пакета файлы