0.01
No commit activity in last 3 years
No release in over 3 years
There's a lot of open issues
A lita handler that helps with code review
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
 Dependencies

Development

~> 1.3
>= 0
>= 3.0.0

Runtime

>= 3.1
< 5.0, >= 3.0
 Project Readme

lita-reviewme

Build Status

A lita handler that helps with code review without getting in the way.

The handler rotates, in order, through a list of names to provider a "reviewer" for some unit of work.

Installation

Add lita-reviewme to your Lita instance's Gemfile:

gem "lita-reviewme", github: "iamvery/lita-reviewme"

Configuration

For the Github integration, you must set an access token in your lita_config.rb. You may use your Github account or create a special account just to leave notification comments. Regardless the user must have access to the repo being reviewed, and the token must be allowed to leave comments on pull requests.

# your bot's lita_config.rb
config.handlers.reviewme.github_access_token = ENV["GITHUB_ACCESS_TOKEN"]

The default message that is posted on GitHub pull request is :eyes: @<reviewer>. The message can be customized via config.handlers.reviewme.github_comment_template. If you would like the reviewer to be notified, be sure add %{reviewer} to your string.

# your bot's lita_config.rb
# Add %{reviewer} for the user to be tagged and notified on GitHub
config.handlers.reviewme.github_comment_template = "Hey %{reviewer}, check it out! :tada:"

Additionally, you can assign a lambda if you would like more finite control of what GitHub comments are sent. Note that reviewer and pull_request are required arguments.

# your bot's lita_config.rb
#
# Note:
# `reviewer` is a username string without the '@'
# `pull_request` is a hash object from GitHub API.

config.handlers.reviewme.github_comment_template = lamda do |reviewer, pull_request|
  title = pull_request[:title]
  "Hey #{reviewer}, check out my new PR called #{title} :tada:"
end

Your bot can assign a reviewer by adding a comment to the requested PR (default) or by requesting a review (or both).

# your bot's lita_config.rb
#
# Note:
# The following configuration will enable review requests and disable comments
config.handlers.reviewme.github_request_review = true  # default (false)
config.handlers.reviewme.github_comment = false        # default (true)

Usage

See who is in the review rotation.

Jay H. Nerdbot: reviewers

Nerdbot Responding via private message...

Nerdbot (privately) channel-name: iamvery, zacstewart, ...

Add a name to the review rotation

Jay H. Nerdbot: add kyfast to reviews

Nerdbot added kyfast to reviews

Remove a name from the review rotation

Jay H. Nerdbot: remove kyfast from reviews

Nerdbot removed kyfast from reviews

Fetch the next reviewer

Jay H. Nerdbot: review me

Nerdbot iamvery

Comment on a Github pull request or issue

This will post a comment mentioning the next reviewer on the referenced Github pull request or issue. In order for this to work, @wolfbrain must have access to the repository.

Jay H. Nerdbot: review #7

Nerdbot iamvery should be on it...

If your Github user is different from your chat user, you might tweak your notification settings to include your Github username.

License

MIT