构建配置和 jenkinsfile 中 token 的不同触发块

时间:2021-06-02 06:43:50

标签: jenkins triggers jenkins-pipeline token

先决条件:在我的存储库中添加一个 webhook:

http://JenkinsURL:Port/multibranch-webhook-trigger/invoke?token=myToken
  1. 转到 Build Configuration -> Scan Multibranch Pipeline Trigger,勾选“Scan by webhook”并为“Trigger token”添加“myToken”
    从存储库推送 -> 触发构建 -> 按预期工作
  2. 从构建配置中取消勾选“通过 webhook 扫描”
    添加如下触发块
triggers {
    GenericTrigger(
        genericVariables:[
            //some variables
        ],
        token: 'myToken',
        //some configurations
    )
}
stages{
    // ...
}

从存储库推送 -> 不构建 -> 不是预期的行为,似乎 token 在这里不起作用

我不知道这两个令牌有什么区别以及我应该如何在jenkinsfile
中使用令牌 我得到了解释,请参阅下面的答案。如果有人知道我们如何在 triggers

中使用 Multibranch webhook

1 个答案:

答案 0 :(得分:0)

我明白了: 有 2 个 webhook 插件:

  • 通用 Webhook 触发器插件,以 JENKINS_URL/generic-webhook-trigger/invoke?token=GenericToken 的形式接收任何 HTTP 请求。它可以用于Freestyle 项目Pipeline 或其他项目中的Build Trigger...也可以添加到triggers阻止 jenkinsfile
  • Multibranch Scan Webhook Trigger,以 JENKINS_URL/multibranch-webhook-trigger/invoke?token=MultibranchToken 的形式接收任何 HTTP 请求,并且可以在 Multibranch PipelineBuild Configuration 中进行配置。 我不知道我们是否可以在 jenkinsfile 中使用 Multibranch Scan Webhook Trigger

回到我的问题,我在 triggers 块中使用 Generic Webhook Trigger,但从 HTTP 请求发送 Multibranch webhook trigger。这就是它不起作用的原因。