首页 > 解决方案 > 每当有新的提交发生时构建,Jenkins + github?

问题描述

我们有一个主分支,开发人员在该分支上创建功能/US-**** 分支,然后提交并将功能分支推送到 git。

一个主分支可以有多个特性分支。

现在这是我需要触发构建的地方。(在创建新功能分支和每次提交/推送时)。

我有一个设置,我正在轮询我的 SCMH/5 * * * *并且我一直保留,

Branch Specifier (blank for 'any') = */feature/*
Refspec = +refs/heads/feature/*:refs/remotes/feature/*

但这仍然将日志打印为:

Seen branch in repository origin/master.... 

而我需要在功能分支创建和这些功能分支上的每次提交时触发构建。它也不应该拾取那些已经与主人合并的分支吗?

这种设置可以吗?

标签: gitjenkinsgithub

解决方案


是的,绝对有可能。我个人使用过的最好的设置是 git webhooks。您可以在 webhook 配置屏幕中指定从哪些事件触发事件:webhook example config

你需要 jenkins github 插件:https ://wiki.jenkins.io/display/JENKINS/GitHub+Plugin

然后,您只需将 github 指向您的 jenkins 实例作为 webhook 端点,并将您的作业上的触发器配置为由该钩子触发。示例:Jenkins gitook 配置

额外说明:如果您像我一样,并且在 aws 中有一个私有的 jenkins 实例,那么您将不得不对 lambda 和 api-gateway 做一些花哨的事情才能让 github 正确连接。我用这段代码来做到这一点:https ://github.com/pristineio/lambda-webhook


推荐阅读