파이프 라인을 사용하여 Jenkins와 병합


0

분기 (master <-newBranch)를 Jenkinsfile (풀 요청 트리거)과 충돌없이 병합하려고합니다.

Jenkins가 실행을 마치면 3 단계에서 "치명적 : 중단 할 병합이 없습니다 (MERGE_HEAD 누락)"오류 메시지가 표시됩니다.

손으로 공연하려고하면 성공합니다.

문제는 단계가 분리되어 있다는 것입니다. 내가 무엇을 할 수 있을지?

고마워, Marcel

내 젠킨스 파일 :

   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)
                }
            }
        }
   }}
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.