在GitHub中合并拉取请求后,Jenkins不会触发构建

时间:2017-01-15 10:45:34

标签: github jenkins

到目前为止触发Jenkins的构建工作正好用于创建新的拉取请求,推动更改并留下像test this please这样的评论但是,当我在GitHub中点击绿色“Merge pull request”按钮时,我不会看看在詹金斯运行的任何工作。

我的工作机会

Refspec:+refs/pull/*:refs/remotes/origin/pr/*

分支说明符:origin/master${sha1}

将[GitHub pull request builder插件文档] [1]作为参考。

JENKINS LOGS

Jan 14, 2017 10:50:17 PM org.jenkinsci.plugins.ghprb.GhprbRootAction handleAction
INFO: Checking PR #3 for Username/project
Jan 14, 2017 10:50:17 PM org.jenkinsci.plugins.ghprb.GhprbTrigger handlePR
INFO: Checking PR #3 for job Nation
Jan 14, 2017 10:50:17 PM org.jenkinsci.plugins.github.webhook.subscriber.DefaultPushGHEventSubscriber onEvent
INFO: Received PushEvent for https://github.com/Username/project
Jan 14, 2017 10:50:17 PM org.jenkinsci.plugins.ghprb.GhprbRootAction handleAction
WARNING: Request not known for event: push

Jan 14, 2017 10:50:28 PM org.jenkinsci.plugins.ghprb.GhprbRootAction handleAction
WARNING: Request not known for event: push
Jan 14, 2017 10:50:28 PM org.jenkinsci.plugins.github.webhook.subscriber.DefaultPushGHEventSubscriber onEvent
INFO: Received PushEvent for https://github.com/Username/project

GITHUB WEBHOOK LOGS

记录1) 请求 X-GitHub-Event: pull_request 有效载荷 .... "action": "closed" ...

记录2) 请求 X-GitHub-Event: push 有效载荷 .... "ref": "refs/heads/develop" ...

记录3) 请求 X-GitHub-Event: push 有效载荷 .... "ref": "refs/heads/feature/update-gitignore" ...

更新

我在GitHub Webhook设置页面中启用了Pull requestIssue commentPush个事件。

3 个答案:

答案 0 :(得分:1)

合并应该是常规推送更改请求的一部分,可能不会被Pull Request Builder插件处理,而是标准的github插件(因为它不再是拉取请求)。

我不知道你正在使用什么类型的工作(管道,DSL,...),但是......

从你的日志中,我可以告诉你有不同的分支,你在合并时推送更改,它们是“开发”和“功能”,而在分支说明符中你有源/主,所以它将忽略对任何一个的更改其他分支。

答案 1 :(得分:1)

我必须创建两个不同的项目。一个用于拉取请求构建器,另一个用于拉取请求合并。

整个示例/答案在这里:Setup GitHub and Jenkins integration for pull request builder and merger

差异在第13和14点解释。14. Configure Jenkins project - Nation-Merge解决了我的问题。

  • Refspec是空白的。
  • 在"分支说明符"中键入origin/develop字段。
  • 勾选"用于GITScm轮询的GitHub挂钩触发器"选项。

答案 2 :(得分:0)

您的refspec专注于pullrequest。尝试将refspec留空