我目前使用的是Build Flow插件,它似乎已被放棄,以支持Jenkins 2.0中的管道。從Jenkins 2.0中的並行執行訪問構建管道
遇到一些問題,使用新的管道重新構建我們現有的作業。
目前,我有類似下面的代碼:
ignore(FAILURE) {
join = parallel([
job1: {build('job1')},
job2: {build('job2')},
job3: {build('job3')}
])
}
results = [join.job1.result.toString(), join.job2.result.toString(), join.job2.result.toString()]
if(join.job1.result.toString() == 'SUCCESS') {
buildList << join.job1.lastBuild.getDisplayName()
}
這裏的目標是並行運行多個現有的工作,然後對構建已完成訪問信息。這在Build Flow插件中一直沒有問題。
我一直無法找到使用新管道訪問這些數據的方法。
echo 'Checking streams for latest builds'
join = [:]
join['Job1'] = { build job: 'Job1', parameters: [[$class: 'StringParameterValue', name: 'TimeWindow', value: '1200']], propagate: false}
join['Job2'] = { build job: 'Job2', parameters: [[$class: 'StringParameterValue', name: 'TimeWindow', value: '1200']], propagate: false}
join['Job3'] = { build job: 'Job3', parameters: [[$class: 'StringParameterValue', name: 'TimeWindow', value: '1200']], propagate: false}
parallel join
連接['Job1']的轉儲不允許訪問AbstractBuild或類似的構建流插件。相反,它表明:
<[email protected]
[email protected]
de[email protected]
[email protected]
[email protected]
resolveStrategy=0
directive=0
parameterTypes=null
maximumNumberOfParameters=0
bcw=null>
使用新的管道,有沒有)來訪問像job1.result,job1.lastBuild,job1.lastBuild.getDisplayName數據(的方法嗎?
儘管這將需要一些腳本的批准,如果你是在sandb運行氧氣環境。 – amuniz
你也可以在「src」中寫一個groovy類來獲取org.jvnet.hudson.main並獲取當前實例的句柄。這樣做我不認爲我需要修改我的任何安全設置。 – red888