coding利用Webhook实现Push代码后的jenkins自动构建

时间:2021-06-06 10:43:20

安装jenkins 篇:http://www.cnblogs.com/loveyouyou616/p/8714544.html

之前部署了持续集成工具jenkins。通常是开发后的代码先推到 远程代码仓库(这里以coding为例),然后通过jenkins定时脚本或者操作构建代码发布。利用定时轮训的方案显然很傻,而人工去执行jenkins构建动作,过于繁琐。于是就想到了用webhook功能。

jenkins 需要的插件

在插件过滤栏里面输入coding以及over,出现如下插件,进行安装即可。

coding利用Webhook实现Push代码后的jenkins自动构建

coding利用Webhook实现Push代码后的jenkins自动构建

jenkins 操作

系统管理 -》系统设置 找到Publish over SSH项

在使用Publish Over SSH之前,需要制作SSH私钥。机器间做免密登录配置。假设机器A,ip为192.168.AA.AAA,机器B: 192.168.BB.BBB,机器A能够免密登录机器B,机器B能够免密登录机器A,制作方式是:
进入A机器,执行:
cd ~
ssh-keygen -t rsa
在机器B写入机器A刚生成的公钥
cd ~ && ll -a
vim authorized_keys

 验证方式: 在A机器上ssh root@192.168.BB.BBB , 此时无需密码登录成功即可。

然后填写如下信息

coding利用Webhook实现Push代码后的jenkins自动构建

参数说明:

Passphrase:密码(key的密码,如果你设置了)
Path to key:key文件(私钥)的路径
Key:将私钥复制到这个框中
Disable exec:禁止运行命令
私有配置:
SSH Server Name:标识的名字(随便你取什么)
Hostname:需要连接ssh的主机名或ip地址(建议ip)
Username:用户名
Remote Directory:远程目录
Use password authentication, or use a different key:可以替换公共配置(选中展开的就是公共配置的东西,这样做扩展性很好)
私有配置的高级:
Port:端口(默认22)
Timeout (ms):超时时间(毫秒)默认即可
Disable exec:禁止运行命令
Test Configuration:测试连接

新建任务 -》 选择 构建一个*风格的软件项目 

coding利用Webhook实现Push代码后的jenkins自动构建

菜单栏中  -》 源码管理

这里选择git ,然后输入项目仓库的地址

coding利用Webhook实现Push代码后的jenkins自动构建

这里需要说明下,因为我这里配置的是私有仓库,所以需要填写验证信息。这里利用的ssh协议,输入B服务器的账号和私钥即可。

coding利用Webhook实现Push代码后的jenkins自动构建

接下来设置构建触发器 (这里的webhook地址需要填写到coding.net 设置 webhook 的url栏 需要公网地址,当然因为我这是本地所以利用穿透工具实现的

将 http://zecsbd.natappfree.cc -> 127.0.0.1:8080 )

coding利用Webhook实现Push代码后的jenkins自动构建

coding利用Webhook实现Push代码后的jenkins自动构建

最后选择菜单栏的构建 -> add server

coding利用Webhook实现Push代码后的jenkins自动构建

这里exec command报错无关紧要

最后保存应用,当你git地址有新的代码提交,会自动构建执行。