#java #hudson
#java #хадсон
Вопрос:
У меня такая ситуация: одно задание hudson для одного проекта, который выполняется путем опроса SCM, и другое задание hudson для выпуска проекта. Во втором задании для выпуска мы не хотим запускать ЕГО тесты несколько раз, поэтому перед выпуском мы хотим запустить одно с заданием, и если не произойдет сбой, мы запустим задание на выпуск. Можно настроить release hudson job для запуска другого задания и только в случае его успешного завершения запустить само? Спасибо
Обновление: у меня есть задание A и задание B. Задание A может быть запущено в любое время всеми, и оно не должно запускать какое-либо другое задание2. Но если я хочу запустить задание B, мне нужно, чтобы после нажатия кнопки выполнить B оно запускало задание A, и только в случае успешного завершения задания A задание B запускало свое собственное выполнение.
Ответ №1:
Насколько я знаю, при установке по умолчанию это невозможно. Но вы можете использовать плагин Join trigger. Затем вам нужно создать новое задание, например «Создать выпуск». Это задание запускает задание A для тестов (с помощью «Построить другие проекты», а затем в «Действиях после сборки» этого нового задания вы определяете «Триггер объединения» для запуска задания B.
Ответ №2:
Если я правильно понимаю ваш вопрос, у вас есть сборка, которая запускает ваши автоматические тесты, и другая сборка, которая создает ваш релиз. Вы хотите, чтобы они были взаимозависимыми, чтобы в случае сбоя автоматических тестов сборка выпуска не создавалась заново.
Я бы подошел к этому по-другому. В Hudson есть функция, с помощью которой вы можете архивировать «последние успешные артефакты». Если вы сделаете это правильно, вы сможете заархивировать свои двоичные файлы, созданные во время тестового запуска, и использовать эти артефакты для выпуска вашего релиза. Таким образом, даже неисправная тестовая сборка не повлияет на ваши «последние успешные артефакты», и ваш релиз будет выпущен с более старым, успешным набором двоичных файлов.