背景:每天的紧急升级,需要打开jenkins,找到job,然后点构建。已经实现自动化了,但是还是觉得累挺。暖心同事提醒可以用curl去执行jenkins,研究了一下,真的可以~~~
实现:
1、在jenkins生成一个token
注意:生成token后一定要复制好号,再进去就看不见啦。或许用别的方法能看见,我没研究
2、在需要执行远程构建的job里增加“触发远程构建”的token,也就是刚才我们生成的token
3、使用curl命令执行job的构建
不带参数:
curl -o index2.html -u qm:.. -X post http://10.10.10.222:8080/job/test_curlJob/build?token=1233211234567
带参数的:
curl -o index2.html -u qm:.. -X post http://10.10.10.222:8080/job/test_curlJob/buildWithParameters?token=1233211234567
PS:我这是流水线里已经写好了参数的默认值,所以执行Job的时候我不需要在外面再加参数名和参数值了,buildWithParameters使用的是流水线的默认参数
其实不带参数和带默认值的参数,差别就是job名后面跟的命令不同,一个是build,一个是buildWithParameters