如何让Jenkins自动为管道工作添加webhook?

时间:2017-06-23 23:15:20

标签: github jenkins jenkins-pipeline webhooks

我已经为Jenkins添加了凭据,以便能够添加webhook。为此,我做了以下事情:

  1. 使用repoadmin:repo_hook范围在GitHub上生成个人访问令牌。
  2. 添加了Secret text凭据及相应的令牌。
  3. 使用Manage Jenkins > Configure System
  4. 中上一步的凭据添加了GitHub服务器

    但是当我创建Pipeline作业时,我在系统日志中看到了:

    GitHub webhooks activated for job p1 with [] (events: [PUSH])
    

    通过Freestyle项目,我得到了:

    GitHub webhooks activated for job fsp1 with [GitHubRepositoryName[host=github.com,username=user,repository=repo]] (events: [PUSH])
    PING webhook received from repo <https://github.com/user/repo>!
    

    对于Freestyle项目,我做了以下工作:

    1. 源代码管理选项卡上选择 Git ,指定存储库URL和凭据(带密码的用户名)。
    2. 检查了GITScm轮询的 GitHub挂钩触发器
    3. 对于管道工作:

      1. 选中 GitHub项目并指定存储库网址。
      2. 检查了GITScm轮询的 GitHub挂钩触发器
      3. 我错过了什么?

2 个答案:

答案 0 :(得分:1)

添加 webhook(在创建管道后):

  • 手动运行一次管道
  • 重新注册 webhooks(管理 Jenkins > 配置系统 > GitHub 插件 > 高级(带有铅笔标记)> 为所有作业重新注册挂钩)

这是一个已知问题。您可以在此处查看:https://issues.jenkins.io/browse/JENKINS-37217

答案 1 :(得分:0)

我有类似的问题。 我不知道为什么但是从blueocean开始工作后它变好了。