diff options
author | Marin Jankovski <marin@gitlab.com> | 2019-02-15 09:51:14 +0000 |
---|---|---|
committer | Marin Jankovski <marin@gitlab.com> | 2019-02-15 09:51:14 +0000 |
commit | 3f55633a2bd95c50168ecbae43230af90d88dbe3 (patch) | |
tree | 7a2fe6ccc0e0d027e24c698e32c168d102c56af4 | |
parent | 5531d0ee6a7abd165c836f8cc1d7edc77b8660ac (diff) | |
parent | 85189ef715df7f9b7cb46f5556cd6eedca3de50a (diff) | |
download | gitlab-ce-3f55633a2bd95c50168ecbae43230af90d88dbe3.tar.gz |
Merge branch 'jl-update-ff-process-docs' into 'master'
Add guidance for the initial state of a feature flag
See merge request gitlab-org/gitlab-ce!24829
-rw-r--r-- | PROCESS.md | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/PROCESS.md b/PROCESS.md index 7fdac098807..7c3c826f921 100644 --- a/PROCESS.md +++ b/PROCESS.md @@ -108,7 +108,19 @@ Merge requests that make changes hidden behind a feature flag, or remove an existing feature flag because a feature is deemed stable, may be merged (and picked into the stable branches) up to the 19th of the month. Such merge requests should have the ~"feature flag" label assigned, and don't require a -corresponding exception request to be created. +corresponding exception request to be created. + +A level of common sense should be applied when deciding whether to have a feature +behind a feature flag off or on by default. + +The following guideliness can be applied to help make this decision: + +* If the feature is not fully ready or functioning, the feature flag should be disabled by default. +* If the feature is ready but there are concerns about performance or impact, the feature flag should be enabled by default, but +disabled via chatops before deployment on GitLab.com environments. If the performance concern is confirmed, the final release should have the feature flag disabled by default. +* In most other cases, the feature flag can be enabled by default. + +For more information on rolling out changes using feature flags, read [through the documentation](https://docs.gitlab.com/ee/development/rolling_out_changes_using_feature_flags.html). In order to build the final package and present the feature for self-hosted customers, the feature flag should be removed. This should happen before the |