curl 调用jenkins的api

jenkins提供了rest api,通过调用接口,可以执行一些job的操作,如构建job ,新建job,启用禁用等操作骑车

其次curl是什么?

cURL是一个利用URL语法在命令行下工作的文件传输工具,1997年首次发行。它支持文件上传和下载,所以是综合传输工具,但按传统,习惯称cURL为下载工具。 cURL还包含了用于程序开发的libcurl。

cURL支持的通信协议有FTP、FTPS、HTTP、HTTPS、TFTP、SFTP、Gopher、SCP、Telnet、DICT、FILE、LDAP、LDAPS、IMAP、POP3、SMTP和RTSP。

curl还支持SSL认证、HTTP POST、HTTP PUT、FTP上传, HTTP form based upload、proxies、HTTP/2、cookies、用户名+密码认证(Basic, Plain, Digest, CRAM-MD5, NTLM, Negotiate and Kerberos)、file transfer resume、proxy tunneling。

可以看出curl支持http协议,所以调用jenkins的rest api是没有问题的。

接下来示例演示操作cur 对jenkins的job的启用和禁用及构建,示例中用到的jenkins url为:http://localhost:8080/jenkins/,job名称为:login,jenkins管理员账号:root, 密码:root

启用job login

curl --user root:root --data enable http://localhost:8080/jenkins/job/login/enable

禁用job login

curl --user root:root --data disable http://localhost:8080/jenkins/job/login/disable

构建job login

curl --user root:root --data build http://localhost:8080/jenkins/job/login/build

命令中–user 表示jenkins账号密码认证

执行结果如下(如果在windows下,是没有办法直接在cmd下执行curl命令,可以下git的客户端,在git bash中执行命令)

Administrator@OXPLAJ8T7PEPCDB MINGW64 ~
$ curl --user root:root  --data disable  http://localhost:8080/jenkins/job/login/disable
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100     7    0     0  100     7      0      7  0:00:01 --:--:--  0:00:01    56

Administrator@OXPLAJ8T7PEPCDB MINGW64 ~
$ curl --user root:root  --data enable  http://localhost:8080/jenkins/job/login/enable
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100     6    0     0  100     6      0      6  0:00:01 --:--:--  0:00:01    42

Administrator@OXPLAJ8T7PEPCDB MINGW64 ~
$ curl --user root:root  --data build http://localhost:8080/jenkins/job/login/build
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100     5    0     0  100     5      0      5  0:00:01 --:--:--  0:00:01    35

Administrator@OXPLAJ8T7PEPCDB MINGW64 ~
$

执行后在jenkins页面查看,可以看到禁用、停用、构建job

标签:JenkinsCurl 发布于:2019-10-20 02:48:19