В настоящее время я создаю небольшое приложение, которое требует, чтобы какое-то чрезвычайно раздражающее программное обеспечение было установлено и запущено в фоновом режиме. Чтобы облегчить задачу разработки, я написал набор файлов docker-compose, которые запускают необходимые демоны, создают некоторые задания и добавляют некоторые тестовые данные.
Теперь я бы хотел выполнить это подобно CI. В настоящее время Дженкинс проверяет все различные репозитории и выполняет сценарий оболочки, который называется docker-compose up --abort-on-container-exit
. Это делает работу, но похоже на хак, и я не такой большой поклонник Дженкинса.
Я хочу спросить: есть ли более красивый способ сделать это? В частности, есть ли CI, который будет
- смотреть набор репозиториев git,
- повторно выполнить docker-compose (возможно, несколько раз с разными наборами параметров) и
- приятно собрать и разделить журналы и сказать мне, какой контейнер точно не удалось как?
- (Опционально) - это не какая-то облачная служба, но ее можно установить на моем локальном сервере?
Если ответ на этот вопрос «написать модуль Дженкинса», то хорошо, пусть будет так.
Я знаю, что есть такие опции, как gitlab-ci, но я бы хотел сохранить сценарий CI таким образом, чтобы его можно было легко выполнить во время разработки, прежде чем переходить к репо.