Vitalii Vitrenko
Vitalii Vitrenko

Reputation: 10435

Get parameters of Jenkins build by job name and build id

I am using Jenkins Pipeline plugin and I need to get all parameters of particular build by its id and job name from other job. So, basically i need something like this.

def job = JobRegistry.getJobByName(jobName)
def build = job.getBuild(buildId)
Map parameters = build.getParameters()
println parameters['SOME_PARAMETER']

Upvotes: 3

Views: 11517

Answers (2)

Vitalii Vitrenko
Vitalii Vitrenko

Reputation: 10435

I figured it out. I can retrieve parameters like this

def parameters = Jenkins.instance.getAllItems(Job)
                        .find {job -> job.fullName == jobName }
                        .getBuildByNumber(buildId.toInteger())
                        .getAction(hudson.model.ParametersAction)

println parameters.getParameter('SOME_PARAMETER').value

Upvotes: 5

Zedee.Chen
Zedee.Chen

Reputation: 212

I suggest you to review "Pipeline Syntax" in a pipeline job, at bottom of Pipeline plugin, and you can see Global Variable Reference, like docker/pipeline/env/etc.

So what you need, JOB_NAME / BUILD_ID is given in "env" list

Upvotes: 3

Related Questions