how to cancel build queue jobs in jenkins, which are not started by jenkins and are in its build queue through REST API

12.2k Views Asked by At

how to cancel build queue jobs in jenkins through REST API, which are not started by jenkins and are in its build queue. I know how to cancel the in-progress job with below command

curl -X POST <jenkins-server>/job/<job-name>/<build-number>/doDelete                        
2

There are 2 best solutions below

8
Eduardo Yáñez Parareda On

It's not possible to cancel a job by its build number, only through the job id:

curl -X POST 'http://jenkins/queue/cancelItem?id=85'
1
Allan On

To cancel a job in the queue, you can POST:

http://jenkins/queue/cancelItem?id=x

To find x, you can parse the result of:

http://jenkins/queue/api/json?tree=items[id,task[name]]

To cancel a build that is in progress:

http://jenkins/job/<jobName>/y/stop

To find y, you can parse the result of:

http://jenkins/job/<jobName>/lastBuild/api/json?tree=building,number