我正在开发 Jenkins 版本 2.32.1 管道。我想提取在之前的工作构建中选择的参数。
在我们之前的 Jenkins 实例 (1.627) 中,我们使用jenkins.model.Jenkins.instance.getItem(job).lastBuild.getBuildVariables().get(param);
由于某种原因,这在这个版本中不起作用(我也尝试禁用沙箱)。
有关如何实现它的任何指示?
先前脚本的简化版本:
def build = Jenkins.get().getItems(org.jenkinsci.plugins.workflow.job.WorkflowJob).find {it.displayName == 'YOUR_JOB_NAME_HERE'}?.getLastBuild()
build.actions.find{ it instanceof ParametersAction }?.parameters.each {echo "${it.name}=${it.value}"}
对于那些想要从上次运行中获取当前构建的参数并正在开发新的 2+ Jenkins 版本的人来说,实际上是一个更短的版本。
要获取 1 个特定参数:
def cls = currentBuild.getPreviousBuild().getRawBuild().actions.find{ it instanceof ParametersAction }?.parameters.find{it.name == 'cls'}?.value
尊重地获取所有参数:
def cls = currentBuild.getPreviousBuild().getRawBuild().actions.find{ it instanceof ParametersAction }?.parameters
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)