Support complex conditions for Reviewer Roulette
At the moment, @gl-docsteam do not use Reviewer Roulette for selecting reviewers for MRs.
This is because, unlike engineering where a random reviewer is wanted, documentation reviews are done according to stage and group assignments:
https://about.gitlab.com/handbook/product/technical-writing/index.html#assignments.
For certain categories of work, though, we'd like to use the roulette system, where any writer could be selected for the review.
These could include MRs labeled:
For MRs changing only files in:
-
/doc
.
Instances where we wouldn't use roulette:
- Community contribution that included code.
- Where anything outside
/doc
changes.
This Issue isn't specifically raised for an docs team implementation, but to look at improving Danger such that teams can more easily add more complex rules. For example, if we have multiple writers per stage one day, we might want something like:
- If changes only
/doc
. - And labelled
DevOps::<stage_name>
. - Select random reviewer from the subset of technical writing team folks assigned to that group.
Essentially, we want to initially support @rpaik as he processes incoming Community contribution MRs that are simple and don't usually require stage-specific knowledge.
Later, as the team grows, we may want to relax some of the review rules (which required knowledge of technical writer assignments, and take advantage of a greater degree of automation).
CC @cynthia for support thoughts. @godfat who has already thought about it a little bit. @.luke who had a quick look at the problem we're trying to solve and thought it would be better to enhance Danger rather than solve the problem by tackling it just in the Dangerfile
s.