CI без сервера
А вот у меня есть такой запрос: я хочу иметь CI-подобный инструмент (задачи/автоматически вычисляемые зависимости порядка выполнения, параметры, matrix и т.д.), но без сервера. Чтобы не было веб-морды и сервера, а было что-то вида
`ci-run ci.yaml` (в чём эта штука выполняется - следующий вопрос). И чтобы из ci.yaml автоматически вытекало всё остальное. Логи на экран, что выполнять, статусы, зависимости, cleanup и т.д.
Разумеется, opensource. Что-то мне в голову ничего не приходит.
`ci-run ci.yaml` (в чём эта штука выполняется - следующий вопрос). И чтобы из ci.yaml автоматически вытекало всё остальное. Логи на экран, что выполнять, статусы, зависимости, cleanup и т.д.
Разумеется, opensource. Что-то мне в голову ничего не приходит.
no subject
Автоматически вычисляемые зависимости порядка выполнения без сервера называются
make.no subject
В твоих словах есть большущая доля правды. Результат работы make меня устраивает (в контексте CI) на много процентов. Не на сто, и вот они: * make рассчитан на создание файлов. Если у меня этап testing зависит от этапа create_vms, а этап deploy от этапа testing, то как я это в make'е опишу так, чтобы при повторном прогоне он бы знал какие этапы делать? Условная молекула пишет себе маленький state, откуда знает, были ли виртуалки created, или нет. * Табы, табы, табы, табы. Категорически нет. * Слишком много регэкспоподобной магии вокруг имён файлов. Я хочу яснее и проще.
Но сам ход мысли - очень, очень точно. Я сейчас буду смотреть на наследников make'а - всякие ninja, mezon и т.д. Я за ними не смотрел, но, может, кто-то написал то, что нужно.
no subject
Ну, впихиваем имеющийся workflow в парадигму зависимости файлов. Если у этапа нет естественного артефакта — создаём искусственный.
Местами-временами ещё может быть нужно в имена stamp’ов включать какие-нибудь параметры, чтоб, например, этап тестирования проходил в уже развёрнутой виртуалке с определённого билда, но если виртуалка развёрнута с другого билда, то она переразворачивалась.