Skip to content
main
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Code Review Bot

Build Status Go Report Card API docs

Prerequisites

Ensure that you have installed Go 1.11 or higher to enable support for Go modules via go mod.

If you're using Go 1.11 or 1.12, set the environment variable GO111MODULE=on (Go 1.13 and later versions automatically enable module support).

Building

To build the crbot tool without a cloned repo (assuming that $GOPATH/bin is in your $PATH):

$ go get github.com/google/code-review-bot/cmd/crbot
$ crbot [options]

Or, from a cloned repo:

$ git clone https://github.com/google/code-review-bot.git
$ cd code-review-bot
$ go build ./cmd/crbot
$ ./crbot [options]

Developing

Install GoMock:

$ go get github.com/golang/mock/gomock@v1.4.0
$ go get github.com/golang/mock/mockgen@v1.4.0

Generate the mocks:

$ go generate ./...

This specific version of both gomock and mockgen tools is what's used in this repo, and tests will fail if your version of these tools generates different code, including comments.

To update the versions of these tools used in this repo:

  1. update the version numbers in this file (above) as well as in .github/workflows/main.yml and go.mod to match
  2. run go mod tidy to update the go.sum file
  3. run the updated go get commands above to get newer versions of the tools
  4. run the go generate command above to regenerate the mocks
  5. run the tests from the top-level of the tree
  6. commit your changes to this file (README.md), go.mod, go.sum, and .travis.yml, making sure that the build passes on Travis CI before merging the change

Testing

Just what you might expect:

$ make test

Contributing

See CONTRIBUTING.md for more details.

License

Apache 2.0; see LICENSE for more details.

Disclaimer

This project is not an official Google project. It is not supported by Google and Google specifically disclaims all warranties as to its quality, merchantability, or fitness for a particular purpose.