以及以下Jenkinsfile:
pipeline {
agent {
label 'apple'
}
stages {
stage('Lint') {
when {
changeRequest()
}
steps {
sh 'fastlane lint'
}
}
}
post {
success {
reportSuccess()
}
failure {
reportFailure()
}
}
}
我使用一个从属服务器来运行实际的构建,但是主控器仍需要签出代码以获取Jenkinsfile。为此,即使它实际上只需要Jenkinsfile,它似乎也使用与作业中定义的行为相同的行为。
我的问题是我想通过将合并请求与当前目标分支修订合并来发现合并请求,但是当发生合并冲突时,构建将在执行Jenkinsfile之前失败。这样可以防止在发布步骤中进行任何形式的报告。
是否有一种方法可以使初始签出不合并目标分支,但是当在从属服务器上实际运行Jenkinsfile时仍将其合并?
答案 0 :(得分:0)
您可能想使用“当前请求请求修订”策略检出,然后在构建成功时发出git merge
命令。