Feature flags can be used to gradually deploy changes, regardless of whether they are new features or performance improvements. By using feature flags, you can determine the impact of GitLab-directed changes, while still being able to disable those changes without having to revert an entire release.
Before using feature flags for GitLab’s development, review the following development guides:
For an overview about starting with feature flags in GitLab’s development, use this training template.
- Process for using features flags: When you should use feature flags in the development of GitLab, what’s the cost of using them, and how to include them in a release.
- Developing with feature flags: Learn about the types of feature flags, their definition and validation, how to create them, frontend and backend details, and other information.
- Documenting features deployed behind feature flags: How to document features deployed behind feature flags, and how to update the documentation for features’ flags when their states change.
- Controlling feature flags: Learn the process for deploying a new feature, enabling it on GitLab.com, communicating the change, logging, and cleaning up.
- How GitLab administrators can enable and disable features behind flags: An explanation for GitLab administrators about how they can enable or disable GitLab features behind feature flags.
- What “features deployed behind flags” means to the GitLab user: An explanation for GitLab users regarding how certain features might not be available to them until they are enabled.