Skip to main content

Connecting a self-hosted GitLab instance to Code Reviews

Written by David Martin
Updated today

Code Reviews supports connecting to self-hosted GitLab instances so you can integrate your repositories into your review workflow. Because this functionality is not yet self-service in the Code Reviews UI, a short setup process is required.

This guide explains the steps needed to enable the connection.


Step 1: Provide your GitLab instance URL

First, you will need the base URL of your GitLab instance.

Example:

https://gitlab.example.com

Send this URL to the support team so we can prepare the connection for your workspace.


Step 2: Allow Code Reviews to access your GitLab instance

If your GitLab environment uses IP allowlisting, you will need to allow Code Reviews’ IP addresses so it can communicate with your GitLab API.

Add the Code Reviews static IP addresses to your allowlist.

Once these IPs are allowlisted, Code Reviews will be able to reach your GitLab instance.


Step 3: Create an OAuth application in GitLab

Code Reviews authenticates to GitLab using OAuth. You will need to create an application inside your GitLab instance.

  1. Log in to GitLab.

  2. Go to User Settings.

  3. Select Applications.

  4. Click New application.

Complete the form with the following values.

Application name

Code Reviews

Redirect URI: This will be provided to you by the Gearset support team and will be unique to each instance

Example
https://app.clayton.io/connect/example/callback

Scopes
Select only:

api

Create the application. For full details, refer to GitLab’s documentation:
https://docs.gitlab.com/integration/oauth_provider/


Step 4: Copy the application credentials

After the application is created, GitLab will generate two credentials:

• Application ID
• Secret

Make a note of them so you can input them into the Clayton webapp. These credentials allow Code Reviews to authenticate securely with your GitLab instance.

Your GitLab repositories will now be available for use in Code Reviews.

Did this answer your question?