Я использую Jenkins Pipeline для автоматической сборки и развертывания приложений Java. Я также использую maven-release-плагин для развертывания Maven в Artifactory.Maven Release Plugin используется в Jenkins Pipeline
Проблема моя Jenkinsfile (или Дженкинс конфигурации трубопровода):
- Мы совершаем версию 0.1.00-ПАНОРАМА по выпуску филиала
- Дженкинс трубопровода получить код и выполнить Maven релиз
- Maven Release изменяет версию на 0.1.00
- Maven Отметить теги GIT, выполнить и развернуть артефакт
- Maven Release изменяет версию на 0.2.00-SNAPSHOT и совершает
- Дженкинс Pipeline обнаружить изменение в GIT, так запускает новую сборку
Вы поняли, что последний шаг создает бесконечный цикл, даже если нет полезного не совершат.
Вот интересная часть моего Jenkinsfile:
sshagent([git_credential]) {
sh "${maven_bin} --settings ${maven_settings} -DreleaseVersion=${release_version} -DdevelopmentVersion=${development_version} release:prepare release:perform -B"
}
Как я могу разорвать петлю (во избежание Дженкинс, чтобы вызвать новую сборку, когда Maven совершающее на GIT)?
Благодаря
Жаль, что я не получаю его, вы хотите выполнить сборку всех изменений, и это распространено, но почему каждая фиксация вы выполняете выпуск тоже? Я думаю, проблема заключается в том, что сборка, инициированная фиксацией, не должна делать и релиз. По-моему, работа, инициированная, должна быть построенной, работа по выпуску не должна запускаться автоматически .. первый вид работы не будет любой цикл, потому что простая сборка maven ничего не совершает, релиз не должен запускаться с помощью фиксации, поскольку он делает последнюю фиксацию для обновления dev-версии ... создание цикла – ivoruJavaBoy
Целью является автоматическое выполнение релиза maven , когда что-то нажимается на ветвь «release». Я уже запускаю сборку на каждом «ведущем» ветке для выполнения модульного теста. Если хотите, можно назвать непрерывное развертывание. – frinux
Моя ошибка, я пропустил, когда вы говорили о релизных ветвях. Позвольте мне подумать об этом, звучит intersting :) – ivoruJavaBoy