MAVERICS_GCP_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 Google Cloud account — with a Cloud Storage bucket containing Orchestrator configuration
- A service account key JSON — with
storage.objects.getpermission (see the GCS deployment provider page for detailed setup steps), or workload identity configured for GCP-hosted deployments
Overview
When theMAVERICS_GCP_CONFIG environment variable is set, the Orchestrator fetches its YAML configuration from the specified GCS bucket and object path. The variable contains a JSON payload with connection details and optional service account credentials. The Orchestrator supports ETag-based change detection for automatic hot-reload.
Use Cases
- GCP-native deployments — store configuration in GCS alongside other GCP resources with native IAM authentication
- GCP CI/CD — publish validated configuration to GCS as part of Cloud Build or other GCP CI/CD pipelines
- Multi-cloud with GCS as config store — use GCS as a centralized config store accessible from any cloud environment
Service Account Setup
Create a Read-Only Service Account
Follow the same steps described in the Console GCS setup guide, but assign the Storage Object Viewer role instead of Storage Object Admin. The Orchestrator only needs to read configuration, not write it.Alternatively, if running on GCE or GKE, configure workload identity to avoid managing service account keys entirely.
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_GCP_CONFIG JSON payload supports the following fields:
| Field | Type | Required | Description |
|---|---|---|---|
bucketName | string | Yes | GCS bucket name |
configurationFilePath | string | Yes | Path to the config file within the bucket |
key | object | Conditional | GCP service account key JSON (not needed with workload identity) |
MAVERICS_RELOAD_CONFIG=true is set, the Orchestrator periodically checks the object’s ETag. When the ETag changes (indicating the file was updated), the Orchestrator reloads the configuration automatically.
Full Environment Example
A completemaverics.env file for an Orchestrator using Google Cloud Storage as its config source:
maverics.env
Troubleshooting
- Permission denied — verify the service account (or workload identity) has
storage.objects.getpermission on the bucket. Check IAM bindings in the GCP Console. - Bucket not found — confirm the
bucketNameis correct. GCS bucket names are globally unique and case-sensitive. - Service account key issues — if using a
keyobject, ensure it is a valid GCP service account key JSON. The key must have thestorage.objects.getpermission. - Config not reloading — ensure
MAVERICS_RELOAD_CONFIG=trueis set. Check Orchestrator logs for ETag change detection messages.