I finally got back around to experimenting with the gitlab merge bot, and it turns out that the day I spent a few weeks back I had actually given up 5 minutes before the finish line.
Marge is now enabled for mesa/mesa, piglit, and parallel-deqp-runner. How you interact with marge: - Collect your reviews - Put reviewed-by tags in your commits - When you would have clicked "Merge when pipeline succeeds" (or, worse, rebase and then merge when pipeline succeeds), instead edit the assignee of the MR (top right panel of the UI) and assign to Marge Bot - Marge will eventually take your MR, rebase it and let the pipeline run. - If the pipeline passes, Marge will merge it - If the pipeline fails, Marge will note it in the logs and unassign herself (so your next push with a "fix" won't get auto-merged until you decide to again). In the commit logs of the commits that Marge rebased (they'll always be rebased), you'll get: Part-of: <https://gitlab.freedesktop.org/anholt/gitlab-experiments/merge_requests/3> In the final commit of that MR, you'll get: Tested-by: Marge Bot <https://gitlab.freedesktop.org/anholt/gitlab-experiments/merge_requests/3> I feel like this is a major improvement to our workflow, in terms of linking commits directly to their discussions without indirecting through google. Note that one Marge instance will only process one MR at a time, so we could end up backed up. There's a mode that will form merge trains, but I don't understand that mode enough yet to trust it. I think for Mesa at this point this is going to be fine, as we should still be able to push tens of MRs through per day. As we scale up, we may find that we need a separate Marge for piglit and other projects, which I should be able to set up reasonably at this point. Once we settle in with Marge and learn to trust our robot overlords, I'll update the contributor docs to direct people to Marge instead of the "merge when pipeline succeeds" button. I'm also hoping that once our commit logs are full of links to discussions, we can drop the mandatory squashing of r-b tags into commit messages and thus make our process even easier for new contributors. _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev