我有一个多分支管道,我想确保它一次执行一个运行。我无法在代理上设置单个执行程序,因为其他作业可以在其他工作区中运行。
这是我的管道的脚本编写方式:
/* Job properties */
properties([
disableConcurrentBuilds(),
gitLabConnection('Gitlab'),
[$class: 'RebuildSettings', autoRebuild: false, rebuildDisabled: true],
[$class: 'JobRestrictionProperty'],
[$class: 'ThrottleJobProperty', categories: [], limitOneJobWithMatchingParams: false, maxConcurrentPerNode: 1, maxConcurrentTotal: 1, paramsToUseForLimit: '', throttleEnabled: true, throttleOption: 'project'],
[$class: 'JobInclusionJobProperty', jobGroupName: 'UrgentJobs', useJobGroup: false]
])
node( allowedNodes ) {
def hadBuildSucceeded = false
ws(custom_directory) {
.....
}
}
当我一次推送三个分支时,该作业将同时开始运行三次,有什么建议说明为什么会失败?