Ежедневная работа Дженкинса

В нашей реализации непрерывной интеграции мы создаем новый файл WAR/Jar каждые несколько минут и разворачиваем его в хранилище снимков Nexus в качестве передового кандидата. это работает удовлетворительно.

Мы также выполняем много автоматизированных тестов качества (findbugs, junit и т. Д.) В качестве последующих заданий, эти задания выполняются намного дольше и иногда регрессируют. Только когда нет регрессии / сбоя QA, мы хотим рассматривать артефакт как Релиз.

Однако, используя нижестоящее задание в исходной сборке (которая создала снимок и заархивировал артефакт в jenkins), мы в конечном итоге получили доступ ко многим выпускам.

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

Диаграмма ниже показывает, что мы пытаемся сделать

                 Create_snapshot
                       |
                --+----+------+--
                  |           |
          quick-regression    |      
                  |           |
 --+--------+-----+---+--     |
   |        |         |       |
Findbugs Integration Junit    |
   |       test      tests   Daily-trigger
   |        |         |       |
   |        |         |       |
   |        |         |       |
   |        |         |       |
---+--------+----+----+-------+--
                 |
          Deploy-as-release

1 ответ

Используете ли вы плагин Join для запуска трех тестовых заданий после задания быстрой регрессии?

Потому что с помощью этого плагина вы можете запускать 3 тестовых задания и, если они успешны, вы можете запускать задание развертывания как релиза.

Если вы хотите создавать только один выпуск в день, вы можете использовать плагин Conditional BuildStepзадании deploy-as-release), чтобы ограничить количество выпусков.

Будет ли это решение работать на вас?

Другие вопросы по тегам