LINUX.ORG.RU

Сценарии развертывания приложения

 , , условное развертывание


0

1

Привет всем. Мы можем описать контейнер с приложением, например, в Dockerfile, А как быть с условным развертыванием? Например я даю команду на деплой, запускаются тесты и только если они все до единого успешны, стартует инстанс с приложением. С помощью чего лучше такое описывать? Желательно без привязки к отдельным сервисам типа гитхаб/гитлаб.

Всем спасибо.

С помощью CI, например Gitlab CI

masa
()

Напиши шелл-скрипт для всего этого.

firkax ★★★★★
()

Той же системой сборки, что ты собираешь приложение и запускаешь приложение.

Begemoth ★★★★★
()

Автоматизация без привязки к конкретным сервисам? Ну обкладывайся скриптами или пиши свои сервисы.

А так - гитлабом проще всего, в нем CI - по сути набор команд на шелле.

l0stparadise ★★★★★
()

распиши все в своем ci.
к примеру можешь прикрутить newman + что-то там с деплоем.

dada ★★★★★
()
Ответ на: комментарий от LongLiveUbuntu

В теории могут помочь даже часы в сортире. Ты мысль ясно изложи.

Anoxemian ★★★★★
()
#!/bin/bash
run-tests && start-app

А «гуру» и чтобы 2+2 сложить докер с CI запустят.

dimgel ★★★★★
()
Последнее исправление: dimgel (всего исправлений: 1)
Ответ на: комментарий от intelfx

Мне надо, чтобы автоматом перед развертыванием выполнялись некие действия по проверке кода, на ошибки, например, и от результата этой проверки зависели дальнейшие действия: либо выдаем отчет об ошибках, либо развертываем приложение.

LongLiveUbuntu ★★★★★
() автор топика
Ответ на: комментарий от LongLiveUbuntu

Это называется Continuous Delivery. Делается миллионом разных способов

leave ★★★★★
()
Последнее исправление: leave (всего исправлений: 1)
Ответ на: комментарий от LongLiveUbuntu

У тебя два варианта: либо писать своё, либо брать готовое. Поскольку всё, что ты перечислил, является потенциально длительным действием (а также потому что во всех не-игрушечных сценариях желательна централизация этих действий), то «готовое» — это в любом случае какой-то сервис, который где-то живёт, как-то принимает от тебя команды и исполняет их по мере необходимости.

Но поскольку сервис ты не хочешь…

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 3)

Можно на чем угодно напилить, зависит от предпочтений и задачи. Для разнообразия, предложу Jenkins.

pekmop1024 ★★★★★
()
Ответ на: комментарий от pekmop1024

Мой сервис будет жить на моей девелоперской машине. Так что он в некотором роде приватный, хотя все нужные файлы для воспроизведения в принципе доступны.

LongLiveUbuntu ★★★★★
() автор топика
Ответ на: комментарий от pekmop1024

Спасибо, гляну. Похоже, это то, что нужно.

LongLiveUbuntu ★★★★★
() автор топика
Ответ на: комментарий от LongLiveUbuntu

Можно использовать Fabric. Пишется скрипт на питоне, который будет выполнять команды локально и удаленно по ssh без всяких серверов.

masa
()
Ответ на: комментарий от LongLiveUbuntu

Kubernetes это то куда будет(может будет) развернуто приложение.

dada ★★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.