jenkins配置webhook,当仓库有推送时自动构建


前置条件

在使用webhook之前,我们需要在jenkins中安装对应的插件

在 dashboard->插件管理 中搜索 Generic Webhook Trigger 并安装

jenkins配置webhook,当仓库有推送时自动构建

创建token

接口需要一些认证信息,所以我们要为项目所属的用户创建一个token

有关jenkins的自动化配置看这里
有关jenkins的tty问题看这里
有关jenkins的反向代理配置看这里
有关jenkins的java11问题看这里
有关jenkins的私钥格式错误问题看这里
有关jenkins的webhooks配置看这里

在 dashboard->用户列表 中选择你的项目所对应的用户,在用户名列表最右侧有 位于 字段提示您该用户所包含的项目

点击该用户名,随后在新的页面点击设置

此时您会看到 API Token 选型,只需要点击 添加新的Token 即可获得一个token,将这个token复制一下,您很快就会用到它。

配置

在你需要管理的构建项目中勾选 Generic Webhook Trigger

jenkins配置webhook,当仓库有推送时自动构建 配图 2

接下来您可以什么也不配置就直接使用Webhook

配置仓库的webhook

在您的仓库中选择webhook选项,按如下格式填入信息即可

http://<您的jenkins访问路径>/generic-webhook-trigger/invoke?token=<您刚刚复制的token>

或者您可以使用另一种格式

http://<您jenkins的用户名>:<您刚刚复制的token>@<您的jenkins访问路径>/generic-webhook-trigger/invoke

测试自动构建

当一切顺利时,您应该能发送测试请求,并在jenkins中看到已经开始的构建流程

为了减少将来可能存在的麻烦,我们可能需要进行如下配置

优化配置

如果您有多个项目部署,则要区分push的是哪个仓库,否则勾选的generic webhook trigger的Jenkins项目都会触发构建
查看完整配置项请看这里