2016-08-26 10 views
9

У меня есть конвейер, который моя команда использует, чтобы развернуть облачные виртуальные машины и развернуть для них стек программного обеспечения. Часть этого процесса состоит в том, чтобы объединить артефакты с выбранными сборками. Прямо сейчас я просто хватаю последний успех перечисленных заданий, но ive столкнулся с проблемами этой работы, которые снова создаются в другом процессе, прежде чем конвейер может создать свой комплект, заставив узел захватить артефакт, построенный с неправильными зависимостями.Jenkins groovy pipeline - получить построенный номер построенного задания

Есть ли способ изменить мой метод простой сборки, чтобы вытащить фактический номер сборки, который был вызван? Консоль конвейера печатает, какой номер сборки создан им, просто не уверен, как получить его в моем отличном коде.

[Pipeline] build (Building tms-auto-build) 
Scheduling project: tms-auto-build 
Starting building: tms-auto-build #298 

ответ

13

Это было на самом деле не из легких. если я просто установить build job: jobName переменной, эта переменная является RunWrapper

https://github.com/jenkinsci/pipeline-plugin/blob/d3f66c6f04d1d979957f02819b19291e2c35e276/support/src/main/java/org/jenkinsci/plugins/workflow/support/steps/build/RunWrapper.java

RunWrapper как .getNumber(), которая работает идеально

def testing = build job: "tms-auto-build" 
println testing.getNumber() 
+0

Я попытался это и работал отлично для успешного строит, но не работает, когда работа по сборке завершилась неудачей. Я разместил свой подробный вопрос здесь: http://stackoverflow.com/questions/43689169/jenkins-pipeline-catch-build-job-info-for-a-failed-parallel-build – ManyuBishnoi

Смежные вопросы