Jenkins除了可以在其提供的网页上构建外,也可以进行远程构建,具体表现如图所示
制作demo,因此简化为
所需工具
1、Jenkins
2、postman
我很忙,不想往下看
1、安装插件 Build Authorization Token Root Plugin
2、生成token
3、发送请求
无参数
http://JENKINS_SITE/buildByToken/build?job={ITEM_NAME}&token=${TOKEN}
含参数
http://JENKINS_SITE/buildByToken/buildWithParameters?job={ITEM_NAME}&token=${TOKEN}${PARAM}={VALUE}
一、Jenkins插件安装
点击Jenkins左侧的Manage Jenkins --> Manage Plugins
在「可选插件」中输入「Build Authorization Token Root Plugin」进行安装
二、系统配置
如若未进行过系统配置,则不需要额外配置
点击Jenkins左侧的Manage Jenkins --> Configure Global Security
三、用户token获取
点击Jenkins右上角你的登录用户名,再点击左侧设置
如果从来没创建过,在「API Token」中点击「添加新Token」
点击「生成」
复制生成的token。到后面,生成的token就不再展示。
如果之前创建过token,可以继续使用,忘记的话,再创建一个呗。
四、创建项目
新建item,项目名为「remoteTest」,勾选「触发远程构建 (例如,使用脚本)」,粘贴当前或其他用户的token
随便写点什么,或者什么都不写,表示有输出内容即可
五、URL发送
打开postman,根据模版修改自己的URL,支持get和post
http://JENKINS_SITE/buildByToken/build?job={ITEM_NAME}&token=${TOKEN}
JENKINS_SITE --- Jenkins地址,重点注意:假如Jenkins由tomcat启动,地址则需要到/jenkins,如:http://192.168.1.2:8080/jenkins
ITEM_NAME --- 创建的item名,对于本文,则是remoteTest
TOKEN --- 生成并复制到身份验证令牌的token
将最终生成的url写入postman,点击「send」即可
当然,正式使用中,并不完全存在不需要参数的构建,因此,修改URL,使其可以支持带参
http://JENKINS_SITE/buildByToken/buildWithParameters?job={ITEM_NAME}&token=${TOKEN}${PARAM}={VALUE}
JENKINS_SITE --- Jenkins地址,重点注意:假如Jenkins由tomcat启动,地址则需要到/jenkins,如:http://192.168.1.2:8080/jenkins
ITEM_NAME --- 创建的item名,对于本文,则是remoteTest
TOKEN --- 生成并复制到身份验证令牌的token
PARAM --- 参数的名称
VALUE --- 参数的值
同时,Jenkins中构建的参数类型,请选择字符类型(确定不支持文件类型,其余类型可真行研究共享成果),如遇中文乱码,请修改编码方式
postman中的代码则改为下图方式
命令行输出参数
六、构建完成后的返回
API不含任何返回,因此,构建完成后,可使用Jenkins中提供的「构建后操作」进行接下来的内容,如邮件发送、通知web服务器等