# GitLab MR Gating via Aikido Dashboard

### Introduction <a href="#introduction" id="introduction"></a>

You can easily configure GitLab MR Gating via the Aikido interface. This functionality allows you to block any **newly introduced** issues for a certain threshold that you decide. This doc focusses on managing configurations in bulk - multiple repos at the same time - without code.

### Use Cases <a href="#use-cases" id="use-cases"></a>

* **Bulk Repository Management**: Easily specify and manage configurations for multiple repositories at once through the Aikido interface.
* **Zero Code Integration**: Install the Aikido app on GitLab to manage checks without embedding any code, simplifying the setup process.
* **Cost Efficiency**: By managing GitLab Checks through Aikido, avoid using CI minutes on GitLab, leading to significant cost savings.

### Setting up GitLab CI <a href="#setting-up-gitlab-ci" id="setting-up-gitlab-ci"></a>

**Step 1.** Go to the [Integrations Page](https://app.aikido.dev/settings/integrations) and select GitLab in the CI gating section.

![Connect popular CI tools like GitHub, GitLab, Jenkins to block risky code merges.](/files/b9Wanskqroglqj1tw4VX)

**Step 2 (Optional).** Select **MR Gating Configuration Via Aikido Dashboard** in the modal that pops up. This will open up a new tab with GitLab to install the MR Checks App. **Note: this modal will only popup if you have already used Gitlab Pipelines in code**.

![Select MR gating configuration method for Gitlab: Aikido dashboard or Gitlab Pipelines.](/files/iTBwb5z1Ch1E2znzefZK)

**Step 3.** Consent to the **Aikido MR Checks OAuth app** in GitLab. Make sure that you select the GitLab group that is currently being used in your workspace.

![Aikido Merge Request Checks requests GitLab API access authorization for user account.](/files/lX8weZ7F6t8VZ3yip3Tn)

**Step 4.** Aikido redirects you to the [GitLab CI page](https://app.aikido.dev/settings/integrations/github/checks) with an overview of your repos. You can start configuring your repos. We recommend starting out with 1 repo to make sure everything works well.

<figure><img src="/files/VlTox208FVrAABeTIFPK" alt=""><figcaption></figcaption></figure>

**Step 5. Select repos in bulk** and click **Setup MR Scans** button in the floating bulk action bar on the bottom.

**Step 6**.This will trigger the modal to choose the severity level for failure and the scans you want to execute.

![Security scan settings configuration panel for the "about-github" repository.](/files/Gqpb3ntPL4zOrZOlrIdd)

{% hint style="info" %}
If you've added new repositories after the initial setup, you'll need to configure those repos as well.

To apply a default configuration automatically, see [Default PR/MR gating configuration for new repositories](/pr-and-release-gating/aikido-ci-gating-functionality/default-pr-mr-gating-configuration-for-new-repositories.md).
{% endhint %}

### Adding Exceptions for specific repos <a href="#adding-exceptions-for-specific-repos" id="adding-exceptions-for-specific-repos"></a>

You might want to have 1 specific repo where the configuration slightly differs. You can easily add exceptions by clicking the triple dots on a repo item or just select 1 or more items and go through the **Configure Scans** process again.

![Project dashboard showing critical vulnerabilities and enabled configurations with actions menu open.](/files/Uytf7qkw9k01xAeTegZM)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.aikido.dev/pr-and-release-gating/gitlab-mr-gating/gitlab-ci-mr-gating-via-aikido-dashboard.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
