IRC bot that reports on Gerrit events
Go to file
Erik Dalén 4959423fd1 Add support for server passwords
Change-Id: I0e623df8848b214ef715b2e265e97b71b16d666a
2012-11-05 12:38:42 -05:00
gerritbot Add support for server passwords 2012-11-05 12:38:42 -05:00
tools Use gerritlib for event-stream consumption. 2012-07-31 11:45:53 -07:00
.gitignore Add setup.py to project. 2012-07-30 17:08:32 -07:00
.gitreview Add gitreview 2012-07-09 15:18:19 -07:00
LICENSE Add Apache 2 license file. 2012-08-02 16:37:04 -07:00
MANIFEST.in Add setup.py to project. 2012-07-30 17:08:32 -07:00
README Add support for server passwords 2012-11-05 12:38:42 -05:00
gerritbot.init Install gerritbot to /usr/local/bin. 2012-07-31 14:06:48 -07:00
openstack-common.conf Add setup.py to project. 2012-07-30 17:08:32 -07:00
setup.cfg Add setup.py to project. 2012-07-30 17:08:32 -07:00
setup.py Remove Nova's description from setup.py. 2012-08-15 13:48:55 -07:00
tox.ini Add setup.py to project. 2012-07-30 17:08:32 -07:00

README

Gerritbot is an IRC bot that will notify IRC channels of Gerrit events.

To install Gerritbot run `python setup.py install` from within the repository's
root directory.

To run Gerritbot `$PATH/gerritbot /path/to/config`. $PATH is usually something
like /usr/local/bin and /path/to/config should be whatever path you have hidden
the config at.

Gerritbot has two configuration files. The first configures the IRC server and
Gerrit server details and is the config file whose path you pass to gerritbot
when starting the bot. It should look like:
  [ircbot]
  nick=NICKNAME
  pass=PASSWORD
  server=irc.freenode.net
  port=6667
  server_password=SERVERPASS
  channel_config=/path/to/yaml/config
  
  [gerrit]
  user=gerrit2
  key=/path/to/id_rsa
  host=review.example.com
  port=29418

The second configures the IRC channels and the events and projects that each
channel is interested in. This config file is written in yaml and should look
like:
  example-channel1:
      events:
        - patchset-created
        - change-merged
      projects:
        - example/project1
        - example/project2
      branches:
        - master
        - development
  example-channel2:
      events:
        - change-merged
      projects:
        - example/project3
        - example/project4
      branches:
        - master