Enable semi-linear merge trains (behind feature flag)
What does this MR do and why?
This expands the feature flag fast_forward_merge_trains_support
to
also include semi-linear merge trains.
- Feature issue: #26996 (closed)
- Rollout issue: #282442 (closed)
Screenshots or screen recordings
Screenshots are required for UI changes, and strongly recommended for all other merge requests.
Before | After |
---|---|
How to set up and validate locally
- Enable the following feature flag:
Feature.enable(:fast_forward_merge_trains_support)
- Seed a project with a bunch of merge requests:
bin/rake gitlab:seed:merge_trains:project
- Visit the project, go to
Settings > Merge Requests
and change the Merge method to Semi-linear. - Visit a few of the open merge requests in separate tabs or windows
- Wait for the pipeline to finish on all of them (wait for the button
Set to auto-merge
to change toMerge
) - In rapid succession, press
Merge
for each of them to start a Semi-linear merge train - Navigate to
Build > Pipelines
in the sidebar - Verify that the commits for the merge trains look as expected.
- Verify that all of the merge trains get merged and that the train does not get re-created at any point
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Edited by Hordur Freyr Yngvason