简体   繁体   中英

How to add webhooks in gitlab for multibranch pipeline jenkins

我想为每次推送触发多分支管道,任何人都可以让我知道我们如何在 gitlab 中为多分支管道配置 web-hooks。

If you were wondering where the trigger setting is in Multibranch pipeline job settings, this will answers it:

Unlike other job types, there is no 'Trigger' setting required for a Multibranch job configuration; just create a webhook in GitLab for push requests which points to the project's webhook URL.

Source: https://github.com/jenkinsci/gitlab-plugin#webhook-url

You can also provide Gitlab triggers within the Jenkinsfile. You can see examples within the link provided above. This is how I got it work:

    pipeline {
        agent {
            node {
                ...
            }
        }
        options {
            gitLabConnection('GitLab')
        }
        triggers {
            gitlab(
                triggerOnPush: true,
                triggerOnMergeRequest: true,
                branchFilterType: 'All',
                addVoteOnMergeRequest: true)
        }
        stages {
            ...
        }
    }

Then in your Gitlab Project go to Settings -> Integrations and type in the Jenkins Job project url in 'URL'. URL should take either form:

Notice that the url does not contain "job" within it and instead uses "project".

Make sure under Triggers, you have "Push Events" checked as well if you want the job to trigger whenever someone pushes a commit.

Finally, run a build against your Jenkinsfile first before testing the webhook so Jenkins will pick-up the trigger settings for Gitlab.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM