[Feature flag] Remove `reject_unsigned_commits_by_gitlab` and relevant code
Feature
The feature flag :reject_unsigned_commits_by_gitlab
is used to temporarily meet the intention of administrators using reject_unsigned_commits
push rule. The best solution to this problem is summarized in this issue
Once this
PLEASE NOTE: This is different than normal feature flags, since it's removal also implies the removal of the relevant code.
Why even have a feature flag for this?
- This way we can relate all code that needs to be removed
- Some customers have requested the ability to control this behavior while we're in this awkward inbetween stage (see #213581 (comment 537289348)).
Owners
- Team: ~"group::editor"
- Most appropriate slack channel to reach out to:
#g_create_editor
- Best individual to reach out to: @pslaughter
- PM: @ericschurter
The Rollout Plan
-
Enabled by default since this feature flag is introduced retro-actively -
Remove feature flag and relevant code when #19185 (closed) is completed
Expectations
What are we expecting to happen?
- Nothing should change since feature flag should be enabled by default
- In a self-hosted instance, if the feature flag is set to off, we are expecting users to be able to use the Web IDE on projects with the
reject_unsigned_commits
push rule.
What might happen if this goes wrong?
- brainstorm: It's possible that we may have an off-by-one error, so we should double check this by modifying our existing rspec for both cases.
Rollout Timeline
Initial Rollout N/A
-
Enabled by default
Cleanup
This is an important phase, that should be either done in the next Milestone or as soon as possible. For the cleanup phase, please follow our documentation on how to clean up the feature flag.
-
This issue #19185 (closed) is resolved and any of it's relevant feature flags removed, -
Remove :reject_unsigned_commits_by_gitlab
feature flag-
Remove all references to the feature flag from the codebase -
Remove relevant code it was controlling from the codebase -
Remove the YAML definitions for the feature from the repository -
Create a Changelog Entry
-
-
Clean up the feature flag from all environments by running this chatops command in #production
channel/chatops run feature delete reject_unsigned_commits_by_gitlab
.
Final Step
-
Close this rollout issue for the feature flag after the feature flag is removed from the codebase.
Rollback Steps
-
This feature can be disabled by running the following Chatops command:
/chatops run feature set --project=gitlab-org/gitlab reject_unsigned_commits_by_gitlab false