Я знаю, что вы можете получить доступ к параметрам сборки непосредственно в рабочем процессе Jenkins. У меня есть параметр BRANCH_REVISION, который мне нужно обновить, чтобы вызов xml api отображал новое значение вместо исходного значения. Это то, что я делал в сценарии не-рабочего процесса, используя следующий фрагмент кода заводной:Как вы можете редактировать параметры сборки в рабочем процессе Jenkins?
def currentParamActions = build.getAction(ParametersAction.class)
def currentParams = currentParamActions.getParameters()
currentParams.each() {
if (it.name.equals("BRANCH_REVISION")) {
newParams.add(new StringParameterValue("BRANCH_REVISION", newRevision))
}
else {
newParams.add(it)
}
}
build.actions.remove(currentParamActions)
new_param_actions = currentParamActions.createUpdated(newParams)
build.actions.add(new_param_actions)
Тем не менее, кажется, что это не работает в Workflow, так как объект сборки не доступен. Заранее благодарю за любую помощь!
Спасибо за ваш ответ. Я посмотрел на текущую переменную currentBuild, но мне не удалось выяснить, как ее использовать, чтобы перезаписать значение существующего параметра. У вас есть какое-то дальнейшее понимание этого? – Josh
@Josh Предлагаю попробовать заменить 'build' в коде в вашем вопросе' currentBuild'. –
К сожалению, насколько я могу судить, currentBuild не имеет большинства методов, доступных для сборки, включая любой доступ к настройкам. – Josh