按作业名称和生成id获取Jenkins生成的参数
我正在使用Jenkins管道插件,我需要从其他作业中通过id和作业名获取特定构建的所有参数。 所以,基本上我需要这样的东西按作业名称和生成id获取Jenkins生成的参数,jenkins,jenkins-pipeline,Jenkins,Jenkins Pipeline,我正在使用Jenkins管道插件,我需要从其他作业中通过id和作业名获取特定构建的所有参数。 所以,基本上我需要这样的东西 def job = JobRegistry.getJobByName(jobName) def build = job.getBuild(buildId) Map parameters = build.getParameters() println parameters['SOME_PARAMETER'] 我建议您查看管道作业中管道插件底部的“管道语法”,您可以看到全局变
def job = JobRegistry.getJobByName(jobName)
def build = job.getBuild(buildId)
Map parameters = build.getParameters()
println parameters['SOME_PARAMETER']
我建议您查看管道作业中管道插件底部的“管道语法”,您可以看到全局变量引用,如docker/Pipeline/env/etc
因此,您需要的是“env”列表中给出的作业名称/构建ID,我已经找到了。
我可以像这样检索参数
def parameters = Jenkins.instance.getAllItems(Job)
.find {job -> job.fullName == jobName }
.getBuildByNumber(buildId.toInteger())
.getAction(hudson.model.ParametersAction)
println parameters.getParameter('SOME_PARAMETER').value
我不需要当前作业的作业名称和生成id。我需要从另一个作业中检索另一个构建的参数。那么使用curl激活另一个作业怎么样?通过这种方式,您可以使用
Jenkins.getInstance().getItemByFullName(jobName)
跳过查找;请参见此.getAction(hudson.model.ParametersAction)
始终返回null
:(