Jenkins GitHub Webhook无法触发构建

3
我有一个已经搭建好的 Jenkins 服务器 (2.249),并且我已经连接了我的 GitHub 帐户,并测试了连接,一切正常。但是,在普通的 pipeline 作业中,当您输入 GitHub 仓库网址时,Jenkins 似乎会在末尾添加一个额外的斜线? 所以我无法让我的普通 pipeline 作业在推送事件时构建,我已经检查了日志,它显示:

因为没有匹配的存储库,所以跳过了 [repo-name]。

所以我开始认为这是因为 Jenkins 在我的 repo url 末尾添加了一个额外的斜线?GitHub 端的 webhook 可行,因为它会给出一个绿色勾号,并且在另一个多分支作业的推送事件上有效,只是对于普通的 pipeline 作业却无效。


我遇到了同样的问题。你最终解决了吗?GitHub项目URL末尾有斜杠,并已配置管道scm以使用ssh URL。 - honestem
@honestem 我放弃了,转而使用 Github Actions。 - Erdss4
1
谢谢。不幸的是,Jenkins是公司强制要求使用的,所以无法更换。如果我找到解决方案,我会发布它。 - honestem
1个回答

0

不知道问题是否仍然存在,已经过去了一年多,但因为我刚刚遇到了同样的问题,这里是一个帮助我理解的答案:https://serverfault.com/a/884717

简单总结一下答案:您需要完成项目配置的git部分(scm):git configuration

对于我来说:由于该项目是私有的,在我无法更新以添加个人令牌的组织中(因为我不是资源-组织的所有者),我选择使用git+ssh url并使用ssh密钥访问此repo。 Github的下一个技巧是将github的IP添加到jenkins用户know_hosts文件中!

需要添加两次存储库URL的原因是不明确的。但我只能看到在https://github.com/jenkinsci/github-plugin/blob/master/src/main/java/com/cloudbees/jenkins/GitHubRepositoryNameContributor.java#L113中,方法parseAssociatedNames将尝试从以下位置获取Jenkins作业关联名称:

  • com.cloudbees.jenkins.GitHubRepositoryNameContributor$FromSCM
  • com.cloudbees.jenkins.GitHubTrigger$GitHubRepositoryNameContributorImpl
  • org.jenkinsci.plugins.github_branch_source.GitHubSCMSourceRepositoryNameContributor

我认为第三个是用于多分支管道。我不太清楚第二个,但第一个确实是来自SCM配置!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接