How can I make a Gerrit reminder bot? -


as have code reviews open in 5-6 gerrit instances can happen forget notify people perform reviews on them , knows, cr gets old gets obsolete , effort invested in lost.

i planning write write gerrit-reminder-bot queries gerrit servers reviews opened you, checks age , status (no votes , no negative votes) , sends email each reviewer.

now question if have similar can improved or used starting point.

please note using gerrit event stream useless in case because want send reminder notification stalled reviews, , stalled review not notifications.

we went "in-house" solution -
script runs gerrit-query , parses (json) results.

basic flow

  1. define: how old "old" (in terms of "last modified" time),
    before start nagging people
  2. get list of open gerrit-changes - in our case - json:
    ssh -p $gerritport $gerrithost gerrit query --format=json --current-patch-set limit:$querylimit status:open
    note -
    • each line of result "mini-json" should parsed on own
    • the summary-line has different format - can ignore completely
  3. for each line
    • parse json key/value pairs
    • if not "old enough" - skip it
    • if (verify < +1) --> "forgot fix build"
    • else-if (codereview < +2) --> "forgot review"
    • else-if (codereview == +2 , verify == +1) --> "forgot submit"

for each scenario send different mail describes case,
link relevant gerrit-change.
mail sent both owner , reviewers (in cc),
cover cases owner on vacation (or left).


Comments

Popular posts from this blog

angular - Ionic slides - dynamically add slides before and after -

minify - Minimizing css files -

Add a dynamic header in angular 2 http provider -