Остановить запуск релиза mvn, повторять сборки Jenkins
[Выпуская через плагин maven-release-plugin, репозитории Git, размещенные на Atlassian Stash, запускают конвейер сборки в Jenkins.]
Есть ли способ остановить выпуск, запускающий новый запуск конвейера? Это происходит потому, что выпущенные pom-файлы возвращаются в Stash. Учитывая, что сборка только что произошла (чтобы добраться до задания по выпуску), это совершенно не нужно, так как все, что изменилось с последней сборки, это номера версий файла pom.
3 ответа
Плагин Jenkins Git может быть настроен на игнорирование определенных сообщений коммита, [maven-release-plugin]
в твоем случае.
Обратите внимание, что пример в тесте справки для игнорирования коммитов имеет некоторые проблемы, попробуйте мою версию: ^(?s)\[maven-release-plugin\].*
Спасибо @blackbuild.
На самом деле это не сработало, я думаю, потому что мы не опрашиваем Дженкинса, а запускаем сборку из Stash (коммитов).
Итак, в нашем случае, я думаю, что ответ заключается в том, чтобы выполнить сборку релизов с определенным (ограниченным) пользователем, который затем можно игнорировать со стороны Stash.
Тем не менее, я думаю, что ваш ответ хорош для тех, кто опрашивает Git-репо прямо с сервера Jenkins:)
Спасибо огромное! Эндрю
Я застрял со старой версией Jenkins (v1.487) и версия плагина git, которую мы имеем, не имеет возможности для Additional behaviors
,
Мне пришлось использовать похожее, но не совсем то же решение, что и @Andrew Eells.
У меня есть Дженкинс, опрашивающий git-репо и строящий, когда изменения найдены. Моя сборка некоторое время была в бесконечном цикле, перестраиваясь, когда плагин выпуска выдвигал pom.xml
обновить в конце сборки.
Чтобы решить эту проблему, я настроил определенного пользователя в Github (здесь не Stash, но концептуально), чтобы он всегда делал сборки. Затем я добавил его в расширенный раздел плагина git в Jenkins под Excluded Users
, По сути то же самое, что и ответ Эндрю, но настроен на игнорирование пользователя с конца Jenkins вместо Stash.