问题
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
回答1:
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
回答2:
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'
来源:https://stackoverflow.com/questions/34261464/how-to-cancel-build-queue-jobs-in-jenkins-which-are-not-started-by-jenkins-and