Я пытаюсь объединить ветку (master <- newBranch) с Jenkinsfile (триггер запроса на включение) без конфликта.
Когда Jenkins завершает работу, я получаю сообщение об ошибке на шаге 3: «fatal: нет объединения, которое нужно прервать (MERGE_HEAD отсутствует)».
Когда я пытаюсь выступить руками, это удается.
Я думаю, что проблема в том, что этапы являются отдельными. Что я могу сделать?
Спасибо марсель
Мой Jenkinsfile:
pipeline { agent none
stages {
// Step 1
stage("Step1") {
agent {label "master"}
steps{
script{
// Pull code
sh (script: "cd /var/www/myProject && git checkout master && git checkout . && git pull", returnStdout: true)
// Merge with newBranch
def mergeReturn = sh (script: "git merge origin/develop --no-commit 2>&1", returnStdout: true).trim()
println("mergeReturn: " + mergeReturn)
// When conflict
if (mergeReturn.contains("Automatic merge went well")) {
error("conflict exists")
}
}
}
}
stage("step2"){
agent {label "master"}
steps{
script{
//Run something on merged code
}
}
stage("Step3") {
agent {label "master"}
steps{
script{
// Abort merge - (Return to master)
sh (script: "git merge --abort", returnStdout: true)
}
}
}
}}