Всем привет!
В этой статье я хочу расказать о настройке Jenkins'а и практически любой IDE от Jetbrains для так называемого Pre-Tested Commit. Pre-Tested Commit — это процесс тестирования изменённого кода перед комитом, в котором разработчик на основе локальных изменений формирует diff, загружает его в Jenkins и проверяет что билд проекта с его изменениями проходит успешно. После этого разработчик фиксирует изменения в репозитории.
Начнём с настройки Jenkins. Для этого нам понадобится Patch Parameter Plugin.
Устанавливаем его в Jenkins.
.png)
После установки плагина настраиваем конкретную джобу для возможности передавать в неё патч с изменениями.
-2.png)
Обратите внимания на настройку «Check-out Strategy». Перед каждым новым билдом нам нужно откатывать пришедшие с патчем изменения с помощью «svn revert».
После настройки джобы мы можем загрузить патч прямо через интерфейс Jenkins'а.
-3.png)
Но это не очень удобно, поэтому мы пойдём дальше и настроим возможность запускать билды с изменениями прямо из IDE. Для этого нам понадобится плагин Jenkins Control Plugin с поддержкой Patch Parameter Plugin.
Скачиваем его отсюда и устанавливаем в IDE.
-4.png)
После установки идём в настройки плагина.
В настройках устанавливаем адрес Jenkins'а и суффикс, добавляемый к пути файлов в diff'е. Обновление списка джобов рекомендую установить в 1 минуту для оперативности оповещения о результатах билда.
-6.png)
Всё! Теперь мы можем запускать билды с локальными изменениями прямо из IDE.
Через загрузку файла патча.
-7.png)
Или сразу на основе Changelist'а создавать патч и запускать с ним билд.
-8.png)
Статус билда отображается рядом с именем Changelist'а.
-9.png)
Спасибо за внимание и стабильных билдов! =)
Автор: nyver
