Skip to content

Configuration

Change Log September 11, 2026

Fairway services can now expose more than one port

A service that speaks gRPC to the cluster and HTTP to the world could not be expressed in a Fairway manifest. spec.listeners replaces spec.containerPort, and existing manifests keep working untouched.

Change Log August 31, 2026

Fairway v3.0.0: charts validate their own values

Every generated chart now ships a values.schema.json, so Helm rejects typo'd keys and out-of-range values before they reach a cluster — a breaking change worth reading before you regenerate.

Explanation

The core contract

The separation of what software needs from how infrastructure provides it.

How-to guides

Pass application configuration via Fairway

Declare app config once in your Fairway manifest and let every environment deliver it — a ConfigMap in-cluster, a baked profile on Runway, per-cell values on Cells.

How-to guides

Modify the values and secrets passed to your service

Practical examples for changing deploy-time values and Vault-backed secrets — none of which need an image rebuild.

How-to guides

Use feature flags in your service

Define a flag in the feature-flags repository, evaluate it with the LabKit client, toggle it with a merge request, and delete it when the rollout is done.

Platform

Fairway

Theseus's Helm chart generator.

Platform

LabKit

Foundational libraries for every GitLab service.

Reference

Fairway manifest schema

Field reference for the FairwayManifest declarative service interface.

Strategies

Feature Flag Strategy in Theseus

An overview of how feature flags will operate in Theseus for application developers

Tutorials

Set up typed configuration

Simple protobuf-defined, validated application config with LabKit v2/config.