我已经在Jenkins中配置了一个多分支管道作业链接到我们的GitHub仓库,它很好地工作,将检查状态反馈给我们的GitHub中的pull请求,这样我们就知道分支是否适合合并。
我没有看到任何针对詹金斯的工作列出的公开拉取请求:
我们还安装了Blue Ocean插件,并且没有显示PR。
任何人都知道为什么会这样吗?我错过了另一个插件\ config吗?
答案 0 :(得分:10)
我也有这个问题。我试过了乔伊的建议,但那没用。我发现,如果您将PR-.+
(或PR-*
作为通配符)添加到正则表达式过滤器以包含分支,则会显示“神奇地”拉取请求。找到了here的文档。令人非常沮丧的是,这个插件的“官方”文档没有解释这一点(至少从我能找到的稀疏文档)。我的项目的配置有效,在这里:
我不确定这个用例是否推荐使用此插件,但Jenkins似乎没有足够的文档。
答案 1 :(得分:2)
我遇到了同样的问题。但是这次在Blue Ocean UI中如下所示
修复是在作业级别从使用Git切换到GitHub Branch Source并配置GitHub Branch Source。作业类型是Multibranch管道。
答案 2 :(得分:0)
对于bitbucket,我认为bitbucket分支源插件会提取请求,但对于github,您需要安装https://wiki.jenkins-ci.org/display/JENKINS/GitHub+pull+request+builder+plugin。
答案 3 :(得分:0)
一个可能的原因可能是由于防火墙导致GitHub无法直接连接到Jenkins。如果GitHub从不将状态检查报告为已完成,即永久挂起,则可能是这种情况。
在这种情况下,轮询是一个简单的解决方案。转到http://_jenkins_ip_:8080/job/_job_name_/configure
并选择“扫描存储库触发器”选项卡。选中“如果没有其他方法,则定期运行”复选框,然后选择一个间隔。我有15分钟的时间。
第一次执行此操作时,应立即进行扫描,并应检测到拉取请求,否则,可能还会发生其他情况。检查该作业上的“扫描存储库日志”页面,因为它可能包含有用的信息。
顺便说一句,我没有安装“ GitHub Pull Request Builder插件”,因为页面显示它存在安全问题。而是使用了“ GitHub Branch Source插件”。安装了其他一些相关插件:
Git client plugin
Git plugin
GitHub API Plugin
GitHub Authentication plugin
GitHub Integration Plugin
GitHub plugin
我也在使用Blue Ocean,但这不是必需的,它只是提供了一个不同的UI。