MAVERICS_GITLAB_CONFIG environment variable.
Console terminology: In the Maverics Console, Orchestrator instances and
configuration delivery are managed through Deployments. When working directly
with YAML, configuration is managed as files delivered via the
-config flag or
MAVERICS_CONFIG environment variable.Prerequisites
- A GitLab account — with a project containing Orchestrator configuration
- A personal access token — with
read_repositoryscope (see the GitLab deployment provider page for detailed token generation steps)
Overview
When theMAVERICS_GITLAB_CONFIG environment variable is set, the Orchestrator fetches its YAML configuration from the specified GitLab project and file path. The variable contains a JSON payload with project details, authentication token, and optional branch selection. The Orchestrator supports ETag-based change detection for automatic hot-reload.
Use Cases
- GitOps with GitLab — manage Orchestrator configuration in GitLab with full version history and merge request workflows
- CI/CD pipeline integration — publish validated configuration as part of GitLab CI/CD pipelines
- Self-hosted GitLab — connect to on-premises GitLab instances for air-gapped or regulated environments
Generating a Personal Access Token
Follow the Console Setup Steps
Follow the same steps described in the Console GitLab setup guide, but only check
read_repository instead of both scopes. The Orchestrator only needs to read configuration, not write it.Configuration
- Console UI
- Configuration
Console UI documentation is coming soon. This section will walk you
through configuring this component using the Maverics Console’s visual
interface, including step-by-step screenshots and field descriptions.
Configuration Reference
TheMAVERICS_GITLAB_CONFIG JSON payload supports the following fields:
| Field | Type | Required | Description |
|---|---|---|---|
namespace | string | Yes | GitLab namespace (group or user) |
repo | string | Yes | Project name |
branch | string | No | Branch to read from (default: the project’s default branch) |
token | string | Yes | Personal access token with read_repository scope |
configurationFilePath | string | Yes | Path to the config file within the repository |
MAVERICS_RELOAD_CONFIG=true is set, the Orchestrator periodically checks the file’s ETag via the GitLab API. When the file is updated (via commit), the Orchestrator detects the ETag change and reloads the configuration automatically.
Full Environment Example
A completemaverics.env file for an Orchestrator using GitLab as its config source:
maverics.env
Troubleshooting
- Authentication failed (401) — verify the personal access token is valid and has not expired. The token needs the
read_repositoryscope. - Project not found (404) — confirm the
namespaceandrepovalues are correct. For private projects, ensure the token has appropriate access. - Wrong branch — if
branchis omitted, the project’s default branch is used. Setbranchexplicitly if the config file is on a different branch. - Self-hosted GitLab — ensure the Orchestrator can reach the GitLab instance’s API endpoint over the network.
- Config not reloading — ensure
MAVERICS_RELOAD_CONFIG=trueis set. Check Orchestrator logs for ETag change detection messages.