[Feature flag] Enable worktree-less opportunistic squashes
What
Enable the gitaly_user_squash_without_worktree
feature flag to enable squashing without a worktree in case both commits are in the same line of heritage.
Part of #3690 (closed)
Owners
- Team: Gitaly
- Most appropriate slack channel to reach out to:
#g_create_gitaly
- Best individual to reach out to: pks-t
Expectations
What release does this feature occur in first?
What are we expecting to happen?
In case UserSquash is executed with two commits, where both commits have a direct parent-child relationship, then we can now perform squashes without creating a worktree.
What might happen if this goes wrong?
Squashing fails.
What can we monitor to detect problems with this?
Roll Out Steps
-
Read the documentation of feature flags -
Add featureflagstaging to this issue (howto) -
Is the required code deployed? (howto) -
Do we need to create a change management issue? (howto) -
Enable on staging (howto) -
Test on staging (howto) -
Verify the feature flag was used by checking Prometheus metric gitaly_feature_flag_checks_total
-
Announce on this issue an estimated time this will be enabled on GitLab.com -
Add featureflagproduction to this issue -
Enable on GitLab.com by running chatops command in #production
(howto) -
Cross post chatops slack command to #support_gitlab-com
and in your team channel -
Verify the feature flag is being used by checking Prometheus metric gitaly_feature_flag_checks_total
-
Announce on the issue that the flag has been enabled -
Did you set the feature to both 100%
andtrue
(howto) -
Submit a MR to have the feature OnByDefault: true
and add changelog entry (howto) -
Have that MR merged -
Possibly wait for at least one deployment cycle (howto) -
Submit an MR to remove the pre-feature code from the codebase and add changelog entry (howto) -
Have that MR merged -
Remove the feature flag via chatops (howto) -
Close this issue
Edited by Patrick Steinhardt