Jenkins common REST API
1、运行job
a、无参任务
curl -XPOST http://IP:8080/jenkins/job/plugin%20demo/build --user admin:admin
b、含参任务
curl -XPOST http://IP:8080/jenkins/job/commandTest/buildWithParameters --user admin:admin
curl -XPOST http://IP:8080/jenkins/job/commandTest/buildWithParameters -d port=80
curl -XPOST http://IP:8080/jenkins/job/commandTest/buildWithParameters -d port=80 \
--data-urlencode json='"{\"parameter\": [{\"name\": \"port\", \"value\": \"80\"}]}”'
curl -XPOST http://IP:8080/jenkins/job/commandTest/buildWithParameters \
-d param1=value1¶m2=value
2、创建job
a、需创建目录
- 创建job目录: ~/.jenkins/jobs/jobfromcmd
- 创建config.xml文件(可从其他工程中复制)
- 运行命令
curl -XPOST http://IP:8080/jenkins/createItem?name=jobfromcmd --user admin:admin \
--data-binary "@config.xml" -H "Content-Type: text/xml”
b、不需创建目录
- 创建config.xml文件(可从其他工程中复制)
- 运行命令(在config.xml同一目录下)
curl -XPOST http://IP:8080/jenkins/createItem?name=jobfromcmd --user admin:admin \
--data-binary "@config.xml" -H "Content-Type: text/xml”
3、删除job
curl -XPOST http://IP:8080/jenkins/job/jobfromcmd/doDelete
4、查询job的状态
curl -XGET http://IP:8080/job/JOB_NAME/lastBuild/api/json
5、关闭job
curl -XPOST --data disable http://IP:8080/job/JOBNAME/disable
6、获取job的build number
curl -XGET http://IP:8080/job/JOB_NAME/lastBuild/buildNumber
7、获取最近成功的build num
curl -XGET http://IP:8080/job/JOB_NAME/lastStableBuild/buildNumber
Disclaimer
- License under
CC BY-NC 4.0
- Copyright issue feedback
me#imzye.me
, replace # with @ - Not all the commands and scripts are tested in production environment, use at your own risk
- No privacy information is collected here
Try iOS App