Ich verwende derzeit das Build Flow Plugin, das zugunsten von Pipelines in Jenkins 2.0 aufgegeben wurde.Zugriff erstellt von parallele Ausführung in Jenkins 2.0 Pipeline
In einige Probleme laufen, unsere bestehenden Arbeitsplätze mit den neuen Pipelines wieder aufzubauen.
Derzeit habe ich Code wie folgt aus:
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()
}
Das Ziel hier ist es, mehrere bestehende Aufträge parallel und dann Zugriff auf Informationen über die Builds, die abgeschlossen zu laufen. Dies hat ohne Probleme im Build Flow Plugin funktioniert.
Ich konnte keine Möglichkeit finden, mit den neuen Pipelines auf diese Daten zuzugreifen.
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
A Dump join [ 'Job1'] gibt keinen Zugang zu einem AbstractBuild oder ähnlichen, die Art und Weise der Build-Flow-Plugin macht. Stattdessen zeigt es:
<[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
resolveStrategy=0
directive=0
parameterTypes=null
maximumNumberOfParameters=0
bcw=null>
die neuen Pipelines verwenden, ist es eine Möglichkeit, den Zugriff auf Daten wie job1.result, job1.lastBuild, job1.lastBuild.getDisplayName()?
Obwohl es einige Skript Genehmigung erforderlich, wenn Sie in einem Sandb laufen oxierte Umgebung. – amuniz
Sie können auch eine groovy-Klasse in "src" schreiben, die org.jvnet.hudson.main abgreift und ein Handle für die aktuelle Instanz erhält. Ich glaube nicht, dass ich meine Sicherheitseinstellungen ändern musste. – red888