Развертывание: сборка на рабочей машине или нет? - PullRequest
0 голосов
/ 15 декабря 2009

У меня есть автоматизированный процесс развертывания приложения Java, где в настоящее время я собираю приложение на компьютере сборки, проверяю сборку в scm и заставляю производственный компьютер извлекать артефакт сборки (который является zip) и через ant переместите класс и конфигурационные файлы туда, где они должны быть.

Я видел другие стратегии, в которых производственная машина извлекает исходный код из scm и создает его сама.

Что мне не нравится в первом подходе, так это то, что, если я собираюсь для производства, вместо того, чтобы ставить, разрабатывать или что-то еще, я должен вручную указать env в сборке. Если бы за это отвечал целевой сервер, в сборке было бы меньше мысли и трений. Тем не менее, мне также нравится использовать ту же сборку, что и при тестировании при постановке.

Итак, я предполагаю, что мой вопрос заключается в том, предпочтительнее ли скопировать уже собранную / уже протестированную версию приложения в рабочую или сделать повторную сборку приложения после его тестирования.

Ответы [ 2 ]

2 голосов
/ 15 декабря 2009

Если у вас уже есть автоматизированная система сборки, которая создает тестовую сборку, насколько сложно ее расширить, чтобы она одновременно создавала как тестовую сборку, так и производственную сборку. Таким образом, вы получаете уверенность, зная, что они были построены из того же проверенного источника, и у вас меньше ручного труда. Я действительно недоволен идеей проверки встроенных артефактов в SCM!

1 голос
/ 15 декабря 2009

Я всегда предпочитаю хранить как можно меньше на рабочем сервере - меньше обновлять, меньше ошибаться.

...