MAVERICS_GITHUB_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 GitHub account — with a repository containing Orchestrator configuration
- A fine-grained personal access token — with Contents read access (see the GitHub deployment provider page for detailed token generation steps)
Overview
When theMAVERICS_GITHUB_CONFIG environment variable is set, the Orchestrator fetches its YAML configuration from the specified GitHub repository and file path. The variable contains a JSON payload with repository details and a personal access token for authentication. The Orchestrator supports ETag-based change detection for automatic hot-reload when the configuration file changes in the repository.
Use Cases
- GitOps workflows — manage Orchestrator configuration in Git with full version history, branching, and merge controls
- Version-controlled config — track every configuration change with commit history and blame annotations
- PR-based config review — require peer review of configuration changes before they reach production
Generating a Personal Access Token
Follow the Console Setup Steps
Follow the same steps described in the Console GitHub setup guide, but set Contents to Read-only instead of Read and write. 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_GITHUB_CONFIG JSON payload supports the following fields:
| Field | Type | Required | Description |
|---|---|---|---|
owner | string | Yes | GitHub repository owner (user or organization) |
repo | string | Yes | Repository name |
token | string | Yes | Fine-grained personal access token with Contents read access |
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 GitHub 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 GitHub as its config source:
maverics.env
Troubleshooting
- Authentication failed (401) — verify the personal access token is valid and has not expired. The token needs read access to the repository contents.
- Repository not found (404) — confirm the
ownerandrepovalues are correct. For private repositories, ensure the token has thereposcope. - File not found — check the
configurationFilePathmatches the actual file path in the repository (case-sensitive, relative to the repo root). - Config not reloading — ensure
MAVERICS_RELOAD_CONFIG=trueis set. Note that GitHub API rate limits may affect polling frequency.