Commit graph

10 commits

Author SHA1 Message Date
Lin Jen-Shin
c90ba127bf Extract roulette to its own module
So it's more modular and extensible
2019-05-30 19:24:28 +08:00
Sean McGivern
60525148e7 Fix reviewer roulette when no-one is in a category
This would return `people.size` before, when it should return `nil`.
2019-04-30 13:31:52 +01:00
Michael Kozono
dfc9d0b694 Exclude reviewers with OOO in status 2019-04-29 13:49:28 -05:00
Sean McGivern
28531ab436 Pick reviewers based on branch name
Change reviewer roulette to always pick the same reviewers for the same
branch name. We do this by:

1. Making the branch name 'canonical' across CE and EE by stripping a
   leading 'ce-' or 'ee-' and a trailing '-ce' or '-ee'. If people are
   following our branch naming guidelines, this should give the same
   branch name in both repos.
2. Converting the branch name to a stable integer by taking the integer
   form of its MD5.
3. Passing that integer as a seed to Ruby's `Random` class, which 'may
   be used to ensure repeatable sequences of pseudo-random numbers
   between different runs of the program' (from the Ruby documentation).

The upshot is that the same branch name (in CE and EE) should always
pick the same reviewers, and those should be evenly distributed across
the set of possible reviewers due to the use of MD5.
2019-04-08 11:56:17 +01:00
Sean McGivern
575ec3af13 Add issue links to Danger roulette comments 2019-04-08 11:56:17 +01:00
Sean McGivern
dea1171724 Make trainee maintainers three times as likely to be picked
Trainee maintainers count as reviewers, but should get more reviews than
most reviewers, as they need practice to become a maintainer. This makes
them three times as likely to be picked (compared to another reviewer;
compared to before, it's roughly twice as likely at the current numbers
for each).

Also, switch to `Array#sample` because I think it looks nicer.
2019-04-05 11:20:44 +01:00
Filipa Lacerda
072489e36d Set specific reviewers for the GitLab UI WG effort 2019-03-29 11:56:18 +00:00
Marin Jankovski
87d19300e3
Set specific reviewers for single codebase effort
This extends Danger so it informs MR authors that single codebase merge
requests need to be approved by a specific group of engineers.

Co-authored-by: Yorick Peterse <yorickpeterse@gmail.com>
2019-03-11 10:42:19 +01:00
Nick Thomas
9afc4f9d11
Reviewer roulette ignores changelogs 2019-02-14 23:52:30 +00:00
Nick Thomas
77b2ecd2b1
Reviewer roulette via Danger
Make danger pick reviewers and maintainers at random, for feontend,
backend, database, etc, changes, whenever files belonging to those
teams get changed.
2019-02-13 16:41:28 +00:00