> ## Documentation Index
> Fetch the complete documentation index at: https://docs.strata.io/llms.txt
> Use this file to discover all available pages before exploring further.

# GitLab

Configure a GitLab repository as the storage provider for your Maverics deployment. The Console publishes signed config bundles to your GitLab repository, and Orchestrator instances poll the repository for updates.

## Prerequisites

* **A GitLab account** -- with permissions to create projects and generate personal access tokens
* **A Maverics Console account** -- with access to create or edit deployments

## GitLab Setup

**1. Create a Repository**

Create a new GitLab project (or use an existing one) for Maverics configuration storage. This project will hold the signed config bundles published by the Console.

**2. Generate a Personal Access Token**

Generate a personal access token for the Console to read and write config bundles to the repository. The token needs `read_repository` and `write_repository` scopes.

1. In GitLab, click your avatar on the left sidebar, then click **Preferences**
2. On the left sidebar, click **Access tokens**
3. Click **Add new token**
4. Enter a **Token name** (e.g., "Maverics Console")
5. Set an **Expiration date** (default is 365 days; GitLab 17.6+ allows up to 400 days)
6. In Select scopes, check **`read_repository`** and **`write_repository`**
7. Click **Create personal access token**
8. Copy the token value from **Your new personal access token** -- paste this into the Console's **Token** field

For full details, see [Personal access tokens](https://docs.gitlab.com/user/profile/personal_access_tokens/) in the GitLab documentation.

## Storage Configuration

Configure these fields in the Console when creating or editing a deployment with the **GitLab** provider.

| Field | Required | Description |
| - | - | - |
| Namespace | Yes | Your GitLab organization name |
| Repository | Yes | The GitLab repository name |
| Branch | Yes | The branch in the repository |
| Token | Yes | A personal access token with `read_repository` and `write_repository` scopes |
| Configuration File Path | No | The path within the repository where the bundle is stored |

> [!NOTE]
>
> The Orchestrator uses the corresponding [config source](/reference/orchestrator/configuration/config-sources) type to retrieve bundles from the deployment provider. If the Console deploys to GitLab, the Orchestrator uses the [GitLab config source](/reference/orchestrator/configuration/config-sources/gitlab) to poll for updates.

## Related Pages

> **[Publishing Deployment Configs Overview](/reference/console/config-publishing)**
>
> Bundle format, signing, deployment lifecycle, and revision history

> **[GitLab Config Source](/reference/orchestrator/configuration/config-sources/gitlab)**
>
> Orchestrator-side GitLab configuration source reference

> **[Deploy to Production](/guides/operations/deploy)**
>
> Production deployment guide for the Orchestrator
