Я не думаю, что это возможно в GitLab на данный момент.Они работают над проблемой, которую они называют «Перспективные конвейеры слияния», которая звучит как то, что вы ищете:
https://gitlab.com/gitlab-org/gitlab-ee/issues/7380
Рабочий процесс, который они описывают:
- Пользователь нажимает кнопку слияния
- Конвейер запускается на базе кода после слияния
- Слияние выполняется только в том случае, если нет конфликтов слияния, все задания выполнены успешно, а целевая ветвь не имеетпродвинулся вперед.
В качестве обходного пути вы можете использовать «когда: вручную»:
https://docs.gitlab.com/ee/ci/yaml/#whenmanual
или какую-либо другую функцию GitLab CI только длязапустить конвейер вручную, а затем, как правило, пользователи должны вставить ссылку на конвейер, который успешно завершился, прежде чем им будет позволено нажать кнопку объединения.