Jenkins CI (deprecated) service

note
In GitLab 8.3, Jenkins integration using the GitLab Hook Plugin was deprecated in favor of the GitLab Plugin. Please use documentation for the new Jenkins CI service.
note
This service was removed in GitLab 13.0

Integration includes:

  • Trigger Jenkins build after push to repository
  • Show build status on Merge request page

Requirements:

Jenkins

  1. Install GitLab Hook plugin
  2. Set up Jenkins project

screen

GitLab

In GitLab, perform the following steps.

Read access to repository

Jenkins needs read access to the GitLab repository. We already specified a private key to use in Jenkins, now we must add a public one to the GitLab project. For that case we need a Deploy key. Read the documentation on how to set up a Deploy key.

Jenkins service

Now navigate to GitLab services page and activate Jenkins

screen

Done! When you push to GitLab, it creates a build for Jenkins. You can view the merge request build status with a link to the Jenkins build.

Multi-project Configuration

The GitLab Hook plugin in Jenkins supports the automatic creation of a project for each feature branch. After configuration GitLab triggers feature branch builds and a corresponding project is created in Jenkins.

Configure the GitLab Hook plugin in Jenkins. Go to ‘Manage Jenkins’ and then ‘Configure System’. Find the ‘GitLab Web Hook’ section and configure as shown below.