<div dir="ltr"><div>Hi Eric,</div><div><br></div><div>Does it mean people no longer need push access, because Marge can merge anything?</div><div><br></div><div>So any random person can create a merge request and immediately assign it to Marge to merge it?<br></div><div><br></div><div>Marek<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Dec 13, 2019 at 4:35 PM Eric Anholt <<a href="mailto:eric@anholt.net">eric@anholt.net</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">I finally got back around to experimenting with the gitlab merge bot,<br>
and it turns out that the day I spent a few weeks back I had actually<br>
given up 5 minutes before the finish line.<br>
<br>
Marge is now enabled for mesa/mesa, piglit, and parallel-deqp-runner.<br>
How you interact with marge:<br>
<br>
- Collect your reviews<br>
- Put reviewed-by tags in your commits<br>
- When you would have clicked "Merge when pipeline succeeds" (or,<br>
worse, rebase and then merge when pipeline succeeds), instead edit the<br>
assignee of the MR (top right panel of the UI) and assign to Marge Bot<br>
- Marge will eventually take your MR, rebase it and let the pipeline run.<br>
- If the pipeline passes, Marge will merge it<br>
- If the pipeline fails, Marge will note it in the logs and unassign<br>
herself (so your next push with a "fix" won't get auto-merged until<br>
you decide to again).<br>
<br>
In the commit logs of the commits that Marge rebased (they'll always<br>
be rebased), you'll get:<br>
<br>
Part-of: <<a href="https://gitlab.freedesktop.org/anholt/gitlab-experiments/merge_requests/3" rel="noreferrer" target="_blank">https://gitlab.freedesktop.org/anholt/gitlab-experiments/merge_requests/3</a>><br>
<br>
In the final commit of that MR, you'll get:<br>
<br>
Tested-by: Marge Bot<br>
<<a href="https://gitlab.freedesktop.org/anholt/gitlab-experiments/merge_requests/3" rel="noreferrer" target="_blank">https://gitlab.freedesktop.org/anholt/gitlab-experiments/merge_requests/3</a>><br>
<br>
I feel like this is a major improvement to our workflow, in terms of<br>
linking commits directly to their discussions without indirecting<br>
through google.<br>
<br>
Note that one Marge instance will only process one MR at a time, so we<br>
could end up backed up.  There's a mode that will form merge trains,<br>
but I don't understand that mode enough yet to trust it. I think for<br>
Mesa at this point this is going to be fine, as we should still be<br>
able to push tens of MRs through per day.  As we scale up, we may find<br>
that we need a separate Marge for piglit and other projects, which I<br>
should be able to set up reasonably at this point.<br>
<br>
Once we settle in with Marge and learn to trust our robot overlords,<br>
I'll update the contributor docs to direct people to Marge instead of<br>
the "merge when pipeline succeeds" button.  I'm also hoping that once<br>
our commit logs are full of links to discussions, we can drop the<br>
mandatory squashing of r-b tags into commit messages and thus make our<br>
process even easier for new contributors.<br>
_______________________________________________<br>
mesa-dev mailing list<br>
<a href="mailto:mesa-dev@lists.freedesktop.org" target="_blank">mesa-dev@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/mesa-dev" rel="noreferrer" target="_blank">https://lists.freedesktop.org/mailman/listinfo/mesa-dev</a><br>
</blockquote></div>