jenkinsci / jenkinsci/gitlab-plugin

Example configuration for building MRs when Pipeline definition comes from SCM

Open
#914 1 comment 2 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
1.4k
Forks
615
Avg merge
4h 32m
Merged PRs (30d)
10

Description

Hey there, I was previously very happy with a freestyle job configuration that built every MR and published the results back to Gitlab. Now I switched to using a Jenkins Pipeline script and MR changes do not trigger a Jenkins build anymore. If I go to Gitlab > Settings > Integrations > Jenkins CI and "Test and save settings", jobs for all open MRs are triggered, but no jobs are started when I do a change to any of the MRs. I see that the webhook is called, it just doesn't start the job.

I read a bit about problems with Jenkinsfiles in the SCM and other issues, but I couldn't figure out the definitive configuration that I need to get this to work.

I'm using

* Jenkins 2.89.4
* Gitlab 10.5.1-ee
* Gitlab plugin 1.5.11
* Job type Pipeline from SCM

Here is the config I'm using

![jenkins-gitlab-config](https://user-images.githubusercontent.com/358916/55388894-6e60aa80-5534-11e9-84cb-dc4f421db31c.png)
![jenkins-gitlab-git-config](https://user-images.githubusercontent.com/358916/55388904-728cc800-5534-11e9-8f0d-bab6be628021.png)

Please help me find out what is necessary to be able to build every MR and also every commit pushed to master. The same configuration worked fine for freestyle jobs but not just doesn't trigger a job when changing anything on the MR.

Here is a log entry that is produced when the webhook ist triggered due to a change on an MR

```
Apr 02, 2019 7:42:08 AM INFO com.dabsquared.gitlabjenkins.webhook.GitLabWebHook getDynamic
WebHook called with url: /project/clevercure-pipeline
Apr 02, 2019 7:42:08 AM FINE com.dabsquared.gitlabjenkins.webhook.build.MergeRequestBuildAction
MergeRequest: {
"object_kind" : "merge_request",
"user" : {
"name" : "Christian Beikov",
"username" : "..",
"avatar_url" : ".."
},
"project" : {
"id" : 17,
"name" : "..",
"description" : "",
"web_url" : "..",
"avatar_url" : null,
"git_ssh_url" : "..",
"git_http_url" : "..",
"namespace" : "..",
"visibility_level" : 0,
"path_with_namespace" : "..",
"default_branch" : "master",
"ci_config_path" : null,
"homepage" : "..",
"url" : "..",
"ssh_url" : "..",
"http_url" : ".."
},
"object_attributes" : {
"assignee_id" : null,
"author_id" : 21,
"created_at" : "2019-04-01 08:37:56 UTC",
"description" : "Closes SRM-4936",
"head_pipeline_id" : 3611,
"id" : 977,
"iid" : 934,
"last_edited_at" : "2019-04-02 07:42:07 UTC",
"last_edited_by_id" : 8,
"merge_commit_sha" : null,
"merge_error" : null,
"merge_params" : {
"force_remove_source_branch" : "1"
},
"merge_status" : "can_be_merged",
"merge_user_id" : null,
"merge_when_pipeline_succeeds" : false,
"milestone_id" : null,
"source_branch" : "SRM-4936_Quickfilter",
"source_project_id" : 45,
"state" : "opened",
"target_branch" : "master",
"target_project_id" : 17,
"time_estimate" : 0,
"title" : "SRM-4936 \"Quickfilter\" test",
"updated_at" : "2019-04-02 07:42:07 UTC",
"updated_by_id" : 8,
"url" : "..",
"source" : {
"id" : 45,
"name" : "..",
"description" : "",
"web_url" : "..",
"avatar_url" : null,
"git_ssh_url" : "..",
"git_http_url" : "..",
"namespace" : "..",
"visibility_level" : 0,
"path_with_namespace" : "..",
"default_branch" : "master",
"ci_config_path" : null,
"homepage" : "..",
"url" : "..",
"ssh_url" : "..",
"http_url" : ".."
},
"target" : {
"id" : 17,
"name" : "..",
"description" : "",
"web_url" : "..",
"avatar_url" : null,
"git_ssh_url" : "..",
"git_http_url" : "..",
"namespace" : "..",
"visibility_level" : 0,
"path_with_namespace" : "..",
"default_branch" : "master",
"ci_config_path" : null,
"homepage" : "..",
"url" : "..",
"ssh_url" : "..",
"http_url" : ".."
},
"last_commit" : {
"id" : "7e4fa53dc1f39ebaf8a17e091ef650ac7202689a",
"message" : "Update pom.xml",
"timestamp" : "2019-04-01T16:57:27+00:00",
"url" : "..",
"author" : {
"name" : "Christian Beikov",
"email" : "c.beikov@curecomp.com"
}
},
"work_in_progress" : false,
"total_time_spent" : 0,
"human_total_time_spent" : null,
"human_time_estimate" : null,
"action" : "update"
},
"labels" : [ ],
"changes" : {
"last_edited_at" : {
"previous" : "2019-04-01 17:55:19 UTC",
"current" : "2019-04-02 07:42:07 UTC"
},
"title" : {
"previous" : "SRM-4936 \"Quickfilter\"",
"current" : "SRM-4936 \"Quickfilter\" test"
},
"updated_at" : {
"previous" : "2019-04-01 17:55:19 UTC",
"current" : "2019-04-02 07:42:07 UTC"
}
},
"repository" : {
"name" : "..",
"url" : "..",
"description" : "",
"homepage" : ".."
}
}
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.