Skip to content
GitLab
Next
    • GitLab: the DevOps platform
    • Explore GitLab
    • Install GitLab
    • How GitLab compares
    • Get started
    • GitLab docs
    • GitLab Learn
  • Pricing
  • Talk to an expert
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
    Projects Groups Snippets
  • Sign up now
  • Login
  • Sign in / Register
  • www-gitlab-com www-gitlab-com
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 1,984
    • Issues 1,984
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Merge requests 2,248
    • Merge requests 2,248
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Metrics
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • GitLab.comGitLab.com
  • www-gitlab-comwww-gitlab-com
  • Issues
  • #7048
Closed
Open
Issue created Apr 06, 2020 by Michelle Gill@m_gillMaintainer

Train engineers on Feature Flag usage

There have been several pain points when it comes to Feature Flags in development, which can cause bottlenecks in development (especially when working with multiple feature flags at the same time), confusion for product managers and engineering managers regarding whether a feature has been "released" or not, nomenclature discrepancies between a product Feature and the concept of a Feature Flag | Toggle. These pain points are particularly difficult when onboarding engineers.

We need to develop training around how to use feature flags successfully, specifically in these areas:

  • Clarifying Operations > Feature Flags (unleash) and how this is not what we're referring to during training: https://docs.gitlab.com/ee/user/project/operations/feature_flags.html
  • How to determine that you should use a feature flag
  • Process around adding and removing a feature flag (How do you add a flag, when should you remove a flag)
  • How to successfully maintain feature flags
  • How do you know when something is already behind a feature flag?
  • How do you enable a feature flag locally?
  • How to roll out a feature
  • What to be aware of when working with multiple feature flags

A presentation has been drafted for review here

There are already some valid, open issues regarding some of these areas:

  • gitlab-org/gitlab#207848 (closed)
  • #6196 (closed)
  • gitlab-org/gitlab#30228 (closed)

A blip regarding the history of this functionality:

Starting from GitLab 9.3 we support feature flags via Flipper. You should use the Feature class (defined in lib/feature.rb) in your code to get, set and list feature flags. During runtime you can set the values for the gates via the admin API.

gitlab-org/gitlab-foss!11747 (diffs)

/cc @timzallmann @clefelhocz1

Edited Aug 04, 2020 by Michelle Gill
Assignee
Assign to
Time tracking