Feature Flags

A feature flag is a temporarily introduced setting that defaults to false and that you can opt into. It exists to allow a controlled rollout of a new feature: you can enable the feature early, on your own schedule, while it is still maturing.

Every flag follows the same lifecycle:

  1. The flag is introduced with a default of false. The feature is available only to deployments that opt in.

  2. You opt in by setting the flag to true in your Helm values.

  3. When the feature becomes generally available, the flag’s default flips to true, so new and upgraded deployments get the feature without setting anything.

  4. In a later release, the flag is removed from the code altogether and the feature is simply part of the product.

Flags are top-level boolean values in the gooddata-cn chart, so you set them at the root of your gdcn-values.yaml file. A flag applies to the whole deployment, so you cannot scope it to a single organization.

Permanent configuration switches, such as deployDexIdP and the other deploy* values that select which optional components the chart installs, are not feature flags. They are ordinary Helm configuration and are documented in the Helm Chart Values Reference.

Set a Feature Flag for the Whole Deployment

  1. Open your gdcn-values.yaml file for editing.

  2. Add or update the value. For example (enableExampleFeatureFlag is a placeholder; use the real name from the release notes):

    enableExampleFeatureFlag: true
  3. Apply the change:

    helm upgrade --namespace gooddata-cn --version <gooddata-cn-release> \
        -f gdcn-values.yaml gooddata-cn gooddata/gooddata-cn

    Replace <gooddata-cn-release> with the version you are moving to (if upgrading) or your current version (if only changing values).

Which Flags Exist

The GoodData.CN release notes are the authoritative source for the flags available in a given release, what each feature does, and its current default. A flag is announced in the release notes when it is introduced, again when its default flips to true, and again when it is removed.

How long a flag stays opt-in varies from feature to feature, so check the release notes rather than assuming a schedule.

The following table lists selected flags. Product management maintains this list, and the release notes remain authoritative if the two ever disagree.

Feature flagWhat it enablesDefaultSince
enableNewPivotTableThe new pivot table enhancements, such as multi-column sorting and header and cell text wrapping.true3.48.0
enableModernQuiverRoutingIstio-native routing behind an Istio Ingress Gateway instead of the traditional NGINX Ingress. The release notes state it will become enabled by default in an upcoming release. See Switch to Istio Service Mesh and Gateway.false3.51.0

Feature flags were introduced in GoodData.CN 3.32. For older versions, see the matching version of the documentation.