У нас есть серверное приложение Linux, которое состоит из ряда инструментов с открытым исходным кодом, а также программ, которые мы написали сами. В идеале мы хотели бы иметь возможность установить это приложение на любой распространенный дистрибутив Linux.
В прошлом мы писали сценарии Perl для автоматизации установки этого приложения. К сожалению, из-за особенностей различных дистрибутивов Linux логика внутри этих сценариев установки становится ужасно сложной и может меняться по мере выпуска новых версий каждого поддерживаемого дистрибутива. Таким образом, поддержка установщика становится одной из самых трудоемких частей проекта!
Мне нужна помощь, будь то фреймворк, документация, образцы кода, которые могут сделать этот процесс менее болезненным. Вот что нужно сделать нашему установщику:
Создание учетных записей пользователей / групп
Создавайте деревья каталогов с определенными владельцами и разрешениями
Устанавливать приложения с открытым исходным кодом, потенциально компилируя их из исходного кода во время установки.
Вставляйте предварительно скомпилированные двоичные файлы, сценарии, файлы конфигурации и документы в определенные каталоги
Зарегистрируйте скрипты запуска и выключения типа init
Сгенерировать ключи шифрования
Проверить подключение к центральному серверу